На протяжение уже несколько лет подымается тема о том, что доступные свободные блоки IPv4 исчерпаны. Не смотря на проблему до сих пор доля использования IPv6 очень низкая. Всеобщий дефицит IPv6 стал причиной роста цен на аренду адресов. Что по сути является платой за воздух. Связи с чем предаю всем по возможности обеспечить вашим сайтам и сервисам поддержку IPv6. Таким образом каждый сделает свой вклад в скорейший переход на IPv6.
Предлагаю краткий мануал по настройке IPv6 на выделенном сервере c Failover IP для работы с виртуализацией KVM. Все работы выполняются в дистрибутиве CentOS 7.
Для начала необходимо настроить IPv6 на хосте:
vi /etc/sysconfig/network-scripts/ifcfg-vmbr0
Добавим в конец файла следующие строки:
IPV6ADDR=2001:41d0:0001:0001::1/64 IPV6INIT=yes IPV6_AUTOCONF=no
Создадим файл с настройками шлюза IPv6:
vi /etc/sysconfig/network-scripts/route6-vmbr0
Скопируйте в файл следующие строки:
2001:41d0:0001:ffff:ff:ff:ff:ff dev vmbr0 default via 2001:41d0:0001:ffff:ff:ff:ff:ff
Следует отметить, что все IPv6 адреса необходимо заменить на свои.
Применяем настройки:
service network restart
Пингаем IPv6 DNS Google:
# ping6 -c 4 2001:4860:4860::8888 PING 2001:4860:4860::8888(2001:4860:4860::8888) 56 data bytes 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=59 time=4.10 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=59 time=4.06 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=59 time=4.09 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=4 ttl=59 time=4.12 ms
Как видите IPv6 работает на хосте, осталось только прописать IPv6 DNS в системе:
vi /etc/sysconfig/network-scripts/ifcfg-vmbr0
DNS3="2001:4860:4860::8888"
Включам форвардинг IPv6 на хосте.
vi /etc/sysctl.conf
Добавить в конец:
net.ipv6.conf.all.forwarding = 1
Применяем настройки:
sysctl -p
Дата-центр с использует Failover IP и тут я решил настроить по аналогии с IPv4, но вот сейчас возникла мысль, а что если использовать в виртуальных машинах сразу шлюз 2001:41d0:0001:ffff:ff:ff:ff:ff
?
Настройка IPv6 на виртуальной машине с CentOS 7:
vi /etc/sysconfig/network
Добавить в содержимое файла:
NETWORKING_IPV6=yes
Изменяем настройки сетевого интерфейса:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
Добавить в конец:
IPV6ADDR="2001:41d0:0001:0001::2/64" IPV6_DEFAULTGW="2001:41d0:0001:0001::1" IPV6INIT="yes" IPV6_AUTOCONF="no" DNS3="2001:4860:4860::8888"
Применяем настройки:
service network restart
Проверяем работу IPv6:
# ping6 -c 4 2001:4860:4860::8888 PING 2001:4860:4860::8888(2001:4860:4860::8888) 56 data bytes 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=59 time=4.10 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=59 time=4.06 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=59 time=4.09 ms 64 bytes from 2001:4860:4860::8888: icmp_seq=4 ttl=59 time=4.12 ms