Difference between revisions of "ArchWiki:Sandbox"

From ArchWiki
Jump to: navigation, search
(IPv6_(Русский))
Line 1: Line 1:
 
[[Category:Sandbox]]
 
[[Category:Sandbox]]
 
__NOTOC__
 
__NOTOC__
=What is a First Heading?=
+
[[Category:Сеть (Русский)]]
==second heading==
+
[[Category:FAQ (Русский)]]
===third heading===
+
[[Category:Русский]]
====fourth heading====
+
[[en:IPv6]]
 +
[[es:IPv6]]
 +
[[pt:IPv6]]
 +
[[zh-CN:IPv6]]
 +
[[zh-TW:IPv6]]
 +
{{Article summary start}}
 +
{{Article summary text|Эта статья освещает протокол IPv6, а также основы настройки различных вещей, связанных с протоколом IPv6, например: постоянный IP адрес.}}
 +
{{Article summary heading|Полезные ссылки}}
 +
{{Article summary wiki|IPv6 - Tunnel Broker Setup}} (Настройка сетевых туннелей)
 +
{{Article summary end}}
 +
 
 +
В Arch Linux протокол IPv6 включён по умолчанию. Если Вы ищете информацию, касающуюся IPv6 туннелей, то Вы можете ознакомиться с [[IPv6 - Tunnel Broker Setup]] (Настройка сетевых туннелей).
 +
 
 +
== Защитные расширения (privacy extensions) ==
 +
 
 +
Для включения защитных расширений (privacy extensions) при автоматическом присвоение адресов (Stateless Address Auto Configuration, SLAAC) в IPv6, согласно RFC 4941, сделайте следующее:
 +
 
 +
Добавьте следующие значения в {{ic|/etc/sysctl.conf}}:
 +
{{bc|1=
 +
# Включение защитных расширений IPv6
 +
net.ipv6.conf.all.use_tempaddr = 2
 +
net.ipv6.conf.default.use_tempaddr = 2
 +
net.ipv6.conf.<nic0>.use_tempaddr = 2
 +
...
 +
net.ipv6.conf.<nicN>.use_tempaddr = 2}}
 +
 
 +
где с <nic0> по <nicN> модули для Вашей сетевой карты (NIC) (параметры "all" или "default" не применяются к модулям для Вашей сетевой карты, которые уже существовалии при применении настройек sysctl).
 +
 
 +
После перезагрузки Защитные расширения должны быть включены.
 +
 
 +
== Обнаружение соседних узлов ==
 +
 
 +
Пинг группового адреса (multicast address) {{ic|ff02::1}} приведёт к ответу всех узлов в пределах диапазона локальной сети (link-local scope). В данном случае интерфейс должен быть указан. На пинг группового адреса {{ic|ff02::2}} ответ будет получен только от роутеров.
 +
{{bc|
 +
$ ping6 ff02::1%eth0
 +
}}
 +
 
 +
Если Вы добавите параметр {{ic|-I <your-global-ipv6>}}, локальные узлы (link-local hosts) ответят в пределах диапазона их внешних адресов (link-global scope addresses). В данном случае имя интерфэйса может быть опущено.
 +
{{bc|
 +
$ ping6 -I 2001:4f8:fff6::21 ff02::1
 +
}}
 +
 
 +
== Статический (постоянный) адрес ==
 +
 
 +
Иногда использование статистического адреса может помочь улучшить безопасность сети. Например, если Ваш локальный роутер использует Обнаружение соседних узлов (Neighbor Discovery) или radvd ([http://www.apps.ietf.org/rfc/rfc2461.html RFC 2461]), Ваш интерфэйс будет автоматически назначен на алрес, основывающийся на MAC-адресе (используя динамическое назначение адреса IPv6 (IPv6's Stateless Autoconfiguration)). Это может быть не так идеально для целей обеспечения безопасности, вследствие того, что данный метод позволяет системы быть отслеженной даже несмотря на изменение сетевой части IP адреса.
 +
 
 +
Для назначения статистического адреса (например: {{ic|2001:470:1000:1000::5/64}}):
 +
 
 +
Добавьте Ваш статистический IP, используя {{ic|netcfg}}. Вы можете загружать из при старте системы указав Ваш {{ic|netcfg}} профиль в секции {{ic|NETWORKS}}  {{ic|/etc/conf.d/netcfg}}:
 +
 
 +
{{ic|/etc/network.d/eth0}}
 +
{{bc|1=
 +
CONNECTION='ethernet'
 +
DESCRIPTION='A basic static ethernet connection using iproute'
 +
INTERFACE='eth0'
 +
IP='static'
 +
ADDR='192.168.1.23'
 +
#ROUTES=('192.168.0.0/24 via 192.168.1.2')
 +
GATEWAY='192.168.1.1'
 +
DNS=('192.168.1.1')
 +
 
 +
## For IPv6 autoconfiguration
 +
#IP6=stateless
 +
 
 +
## For IPv6 static address configuration
 +
#IP6='static'
 +
#ADDR6=('1234:5678:9abc:def::1/64' '1234:3456::123/96')
 +
#ROUTES6=('abcd::1234')
 +
#GATEWAY6='1234:0:123::abcd'
 +
}}
 +
 
 +
Ознакомьтесь с [[Netcfg]] для дополнительной информации.
 +
 
 +
== Disable IPv6 ==
 +
 
 +
{{Note|1=Ядро Arch имеет встроенную поддержку IPv6 [https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/linux&id=3aa460e18eac7002bc013949dd401b16f16120b5], поэтому модуль не может быть занесён в чёрный список.}}
 +
 
 +
=== Отключение функционирования ===
 +
 
 +
В случае возникновения каких-либо проблем, добавление параметра {{ic|1=ipv6.disable=1}} в [[kernel line | строку загрузки ядра]] отключит весь стек IPv6. Ознакомьтесь с [[Kernel parameters|Параметры ядра]] для дополнительной информации.
 +
 
 +
Кроме описанного выше способа, добавления параметра {{ic|1=ipv6.disable_ipv6=1}} позволит сохранить функциональность стака IPv6, но не будет назначать адреса IPv6 ни одному из Ваших сетевых устройств.
 +
 
 +
Ещё один способ избежания добавления адресов IPv6 к определённому сетевому интерфейсу - добавление следующих настроек sysctl в {{ic|/etc/sysctl.d/ipv6.conf}}:
 +
{{bc|<nowiki>
 +
# Отключение IPv6
 +
net.ipv6.conf.all.disable_ipv6 = 1
 +
net.ipv6.conf.<interface0>.disable_ipv6 = 1
 +
...
 +
net.ipv6.conf.<interfaceN>.disable_ipv6 = 1
 +
</nowiki>}}
 +
Замечание: Вы должны указать подробно все необходимые Вам интерфейсы, так как отключение "all" не применяется к тем интерфейсам, который уже были "подняты" ("up") при применении настройек sysctl.
 +
 
 +
Замечание 2: при отключении IPv6 с помощью sysctl, Вы должны закомментировать IPv6 узлы в Вашем файлу {{ic|/etc/hosts}}.
 +
{{bc|<nowiki>
 +
#<ip-address> <hostname.domain.org> <hostname>
 +
127.0.0.1 localhost.localdomain localhost
 +
#::1 localhost.localdomain localhost
 +
</nowiki>}}
 +
иначе могут возникнуть проблемы соединения, потому что система не может преобразовать имя узла в адрес IPv6, который в свою очередь недоступен.
 +
 
 +
=== Другие программы ===
 +
 
 +
Отключение функционирования протокола IPv6 в ядре не предотвращает от того, что другие программы не будут пытаться использовать протокол IPv6. В большинстве случаев, это проходит без последствия, но если Вы будете испытывать проблемы с этими программами, то курите маны программы до просветления (program's man page(s)) с целью поиска способа отключения функционирования протокола IPv6.
 +
 
 +
Например, {{Pkg|dhcpcd}} будет продолжать без особых последствий пытаться посылать запросы по протоколу IPv6 на поиски роутера (IPv6 router solicitation). Для отключения, как было указано в the dhcpcd.conf man page, следует добавить следующее значение в {{ic|/etc/dhcpcd.conf}}:
 +
noipv6rs
 +
 
 +
==Смотри также==
 +
* [http://www.kernel.org/doc/Documentation/networking/ipv6.txt IPv6] - Документация на kernel.org

Revision as of 15:59, 7 February 2013

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki (Настройка сетевых туннелей) Template:Article summary end

В Arch Linux протокол IPv6 включён по умолчанию. Если Вы ищете информацию, касающуюся IPv6 туннелей, то Вы можете ознакомиться с IPv6 - Tunnel Broker Setup (Настройка сетевых туннелей).

Защитные расширения (privacy extensions)

Для включения защитных расширений (privacy extensions) при автоматическом присвоение адресов (Stateless Address Auto Configuration, SLAAC) в IPv6, согласно RFC 4941, сделайте следующее:

Добавьте следующие значения в /etc/sysctl.conf:

# Включение защитных расширений IPv6
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.use_tempaddr = 2
net.ipv6.conf.<nic0>.use_tempaddr = 2
...
net.ipv6.conf.<nicN>.use_tempaddr = 2

где с <nic0> по <nicN> модули для Вашей сетевой карты (NIC) (параметры "all" или "default" не применяются к модулям для Вашей сетевой карты, которые уже существовалии при применении настройек sysctl).

После перезагрузки Защитные расширения должны быть включены.

Обнаружение соседних узлов

Пинг группового адреса (multicast address) ff02::1 приведёт к ответу всех узлов в пределах диапазона локальной сети (link-local scope). В данном случае интерфейс должен быть указан. На пинг группового адреса ff02::2 ответ будет получен только от роутеров.

$ ping6 ff02::1%eth0

Если Вы добавите параметр -I <your-global-ipv6>, локальные узлы (link-local hosts) ответят в пределах диапазона их внешних адресов (link-global scope addresses). В данном случае имя интерфэйса может быть опущено.

$ ping6 -I 2001:4f8:fff6::21 ff02::1

Статический (постоянный) адрес

Иногда использование статистического адреса может помочь улучшить безопасность сети. Например, если Ваш локальный роутер использует Обнаружение соседних узлов (Neighbor Discovery) или radvd (RFC 2461), Ваш интерфэйс будет автоматически назначен на алрес, основывающийся на MAC-адресе (используя динамическое назначение адреса IPv6 (IPv6's Stateless Autoconfiguration)). Это может быть не так идеально для целей обеспечения безопасности, вследствие того, что данный метод позволяет системы быть отслеженной даже несмотря на изменение сетевой части IP адреса.

Для назначения статистического адреса (например: 2001:470:1000:1000::5/64):

Добавьте Ваш статистический IP, используя netcfg. Вы можете загружать из при старте системы указав Ваш netcfg профиль в секции NETWORKS /etc/conf.d/netcfg:

/etc/network.d/eth0

CONNECTION='ethernet'
DESCRIPTION='A basic static ethernet connection using iproute'
INTERFACE='eth0'
IP='static'
ADDR='192.168.1.23'
#ROUTES=('192.168.0.0/24 via 192.168.1.2')
GATEWAY='192.168.1.1'
DNS=('192.168.1.1')

## For IPv6 autoconfiguration
#IP6=stateless

## For IPv6 static address configuration
#IP6='static'
#ADDR6=('1234:5678:9abc:def::1/64' '1234:3456::123/96')
#ROUTES6=('abcd::1234')
#GATEWAY6='1234:0:123::abcd'

Ознакомьтесь с Netcfg для дополнительной информации.

Disable IPv6

Note: Ядро Arch имеет встроенную поддержку IPv6 [1], поэтому модуль не может быть занесён в чёрный список.

Отключение функционирования

В случае возникновения каких-либо проблем, добавление параметра ipv6.disable=1 в строку загрузки ядра отключит весь стек IPv6. Ознакомьтесь с Параметры ядра для дополнительной информации.

Кроме описанного выше способа, добавления параметра ipv6.disable_ipv6=1 позволит сохранить функциональность стака IPv6, но не будет назначать адреса IPv6 ни одному из Ваших сетевых устройств.

Ещё один способ избежания добавления адресов IPv6 к определённому сетевому интерфейсу - добавление следующих настроек sysctl в /etc/sysctl.d/ipv6.conf:

# Отключение IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<interface0>.disable_ipv6 = 1
...
net.ipv6.conf.<interfaceN>.disable_ipv6 = 1

Замечание: Вы должны указать подробно все необходимые Вам интерфейсы, так как отключение "all" не применяется к тем интерфейсам, который уже были "подняты" ("up") при применении настройек sysctl.

Замечание 2: при отключении IPv6 с помощью sysctl, Вы должны закомментировать IPv6 узлы в Вашем файлу /etc/hosts.

#<ip-address>	<hostname.domain.org>	<hostname>
127.0.0.1	localhost.localdomain	localhost
#::1		localhost.localdomain	localhost

иначе могут возникнуть проблемы соединения, потому что система не может преобразовать имя узла в адрес IPv6, который в свою очередь недоступен.

Другие программы

Отключение функционирования протокола IPv6 в ядре не предотвращает от того, что другие программы не будут пытаться использовать протокол IPv6. В большинстве случаев, это проходит без последствия, но если Вы будете испытывать проблемы с этими программами, то курите маны программы до просветления (program's man page(s)) с целью поиска способа отключения функционирования протокола IPv6.

Например, dhcpcd будет продолжать без особых последствий пытаться посылать запросы по протоколу IPv6 на поиски роутера (IPv6 router solicitation). Для отключения, как было указано в the dhcpcd.conf man page, следует добавить следующее значение в /etc/dhcpcd.conf:

noipv6rs

Смотри также

  • IPv6 - Документация на kernel.org