[РЕШЕНО] Как отключить протокол Ipv6 в Linux (Ubuntu,Debian,Fedora,Cent OS и др.)






Протокол Ipv6 позволяет использовать больше адресов, чем поддерживается в протоколе Ipv4. Однако он еще не так широко распространен и переход на него все еще продолжается.


Протокол Ipv6 является следующей версией схемы адресации Ipv4, которая используется в настоящее время для назначения в сети Интернет. 

В вашей системе есть поддержка ipv6?

Проверим:


Чтобы протокол Ipv6 работал, прежде всего вам нужна система, в которой он поддерживается. В Ubuntu Linux Mint и в большинстве современных дистрибутивов это есть. 

Выходные данные команды Ifconfig, вы можете увидеть адреса IPv6, назначенных сетевым интерфейсам 

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1c:c0:f8:79:ee  
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21c:c0ff:fef8:79ee/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:110880 errors:0 dropped:0 overruns:0 frame:0
          TX packets:111960 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:62289395 (62.2 MB)  TX bytes:25169458 (25.1 MB)
          Interrupt:20 Memory:e3200000-e3220000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:45258 errors:0 dropped:0 overruns:0 frame:0
          TX packets:45258 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4900560 (4.9 MB)  TX bytes:4900560 (4.9 MB)
 
(Строку "inet6 addr".)

Вам нужен маршрутизатор/модем, в котором также поддерживается протокол ipv6. И кроме того, ваш провайдер также должен поддерживать протокол ipv6.

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

Есть много сайтов, на которых проверяется поддержка протокола ipv6 для вашего соединения.

Параметры ядра, которые позволяют использовать протокол ipv6:

$ sysctl net.ipv6.conf.all.disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 0

$ sysctl net.ipv6.conf.default.disable_ipv6
net.ipv6.conf.default.disable_ipv6 = 0

$ sysctl net.ipv6.conf.lo.disable_ipv6
net.ipv6.conf.lo.disable_ipv6 = 0
То же самое можно также проверить с Proc файлов
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
0
 
 
Обратите внимание на то, что переменные управляют "отключением" ("disabling") протокола ipv6. Так если их установить в 1, то протокол ipv6 будет отключен.

Отключите ipv6, если он не поддерживается

Так что, если в вашей сетевой инфраструктуре протокол pv6 не поддерживается, то его лучше всего полностью отключить. Почему? Он может вызвать проблемы, например, задержки при поиске домена, создавать ненужные попытки подключения к адресам ipv6, что будет вызывать в сети задержку и т.д.
Мне для этого пришлось решить несколько проблем. Команда apt-get иногда пытается подключиться к адресам ipv6 и прекращает работать, а затем делает попытку для адреса ipv4. Взгляните на следующие выходные данные

$ sudo apt-get update
Ign http://archive.canonical.com trusty InRelease
Ign http://archive.canonical.com raring InRelease             
Err http://archive.canonical.com trusty Release.gpg         
  Cannot initiate the connection to archive.canonical.com:80
(2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) 
[IP: 2001:67c:1360:8c01::1b 80]
 Err http://archive.canonical.com raring Release.gpg   
  Cannot initiate the connection to archive.canonical.com:80 
(2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) 
IP: 2001:67c:1360:8c01::1b 80]

Т.к., вероятно, делалась попытка использовать протокол Ipv6, ошибки, подобные этим, в последних версиях Ubuntu встречались достаточно часто.
Я заметил, что аналогичное происходит и в других приложениях, таких как Hexchat, а также Google Chrome, в который поиск доменного имени иногда длится дольше обычного.
Поэтому лучшим решением будет отключение протокола Ipv6 для того, чтобы полностью избавиться от подобных вещей. Для этого потребуется небольшое переконфигурирование, а результат поможет вам решить многие проблемы с сетью в вашей системе. Пользователи даже сообщали об увеличении скорости работы интернета.

Отключение Ipv6 — метод 1

Отредактируйте файл - /etc/sysctl.conf 

$ sudo gedit /etc/sysctl.conf
И в конец файла добавьте следующие строки
# IPv6 disabled
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
 
 
Сохраните файл и закройте его
Перезапустите sysctl с помощью следующей команды
$ sudo sysctl -p
Снова проверьте выходные данные, выдаваемые командой ifconfig, и на этот раз адреса ipv6 не должно быть


$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:5f:28:8b  
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1346 errors:0 dropped:0 overruns:0 frame:0
          TX packets:965 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1501691 (1.5 MB)  TX bytes:104883 (104.8 KB)
 
 
Если он не сработает, то попробуйте перезагрузить систему и снова проверьте ifconfig.

Отключение Ipv6 — метод GRUB

Протокол ipv6 также можно отключить, если отредактировать конфигурационный файл grub

$ sudo gedit /etc/default/grub
 
Найдите строку, в которой есть запись "GRUB_CMDLINE_LINUX", и отредактируйте ее следующим образом

GRUB_CMDLINE_LINUX="ipv6.disable=1"
 
То же самое можно добавить к значению переменной с именем "GRUB_CMDLINE_LINUX_DEFAULT" — будет работать любой вариант. Сохраните файл, закройте его и перегенерируйте конфигурацию grub.

$ sudo update-grub2
 
Перезагрузитесь. 
Теперь протокол ipv6 должен быть отключен.

Комментарии

Популярные сообщения из этого блога

Как разрешить ненадежным приложениям доступ к аккаунту

Windows для системных администраторов

Windows для системных администраторов