ISATAP-роутер на Linux

Задача – выдать всем кто умеет IPv6-адреса. NAT-ов нет, но в L2 к клиенту нет возможности поставить оборудование, которое будет раздавать RA и DHCPv6. Как вариант – isatap. Вариант подходит и для тех, кто за NATом. Главное чтобы NAT-а небыло между isatap-сервером и клиентом.

Поднимаем туннель:
ip tunnel add is0 mode isatap local 1.2.3.4 ttl 64
ip link set is0 up
ip addr add 2001:db8:2158:a00f::5efe:192.0.2.1/64 dev is0
1.2.3.4 – IPv4-адрес нашего сервера.

В конфиг radvd пишем:
interface is0
{
AdvSendAdvert on;
UnicastOnly on;
AdvHomeAgentFlag off;

prefix 2001:db8:2158:a00f::/64
{
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr off;
};
};

Перезапускаем radvd и идём к dns.
Обычно компьютеры, которые умеют isatap автомагически пытаются найти isatap-роутеры с именем isatap.локальный.домен например isatap.some.lan

Дописываем в зону some.lan. A-запись для хоста isatap.some.lan. с IPv4-адресом сервера. Применяем зону и ждём жаждущих получить свой адрес :)

Само-собой на сервере должен быть включён форвардинг IPv6-трафика. (sysctl net.ipv6.conf.all.forwading=1)

| опубликовано: Май 4, 19:10