У меня есть imac, на котором уже много лет работает статический IPv6; я работаю над развертыванием IPv6 для клиентов и подключил локальную сеть тестового маршрутизатора к интерфейсу USB Ethernet на imac, который правильно получает делегированный адрес от тестового маршрутизатора и получает от него локальный маршрут по умолчанию:
en5: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=4<VLAN_MTU>
ether d0:37:45:b8:f3:64
inet 192.168.1.10 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::1427:aee3:e9e5:138%en5 prefixlen 64 secured scopeid 0xf
inet6 2607:f678:2fff::843:5ec6:8b74:9785 prefixlen 64 autoconf secured
netstat -rn:
...
Internet6:
Destination Gateway Flags Netif Expire
default 2607:f678:1::1 UGSc en0
default fe80::%utun0 UGcI utun0
default fe80::4a77:46ff:fef9:5bb3%en5 UGcI en5
...
Когда я удаляю реальный маршрут по умолчанию (en0), доступы ipv6 сразу же получают сообщение «no route to host» (т.е. не от восходящего потока, а с самого первого перехода):
# traceroute6 google.com
connect: No route to host
Шлюз пингуется:
# ping6 fe80::4a77:46ff:fef9:5bb3%en5
PING6(56=40+8+8 bytes) fe80::1427:aee3:e9e5:138%en5 --> fe80::4a77:46ff:fef9:5bb3%en5
16 bytes from fe80::4a77:46ff:fef9:5bb3%en5, icmp_seq=0 hlim=64 time=0.708 ms
16 bytes from fe80::4a77:46ff:fef9:5bb3%en5, icmp_seq=1 hlim=64 time=0.638 ms
^C
Я пробую удалить маршрут utun0 на случай, если он пытается его использовать, но получаю:
# route delete -inet6 default fe80::%utun0
route: writing to routing socket: not in table
delete net default: gateway fe80::%utun0: not in table
Я не уверен, чего здесь не хватает...