Не удается связаться с веб-сервером из собственной подсети ipv6, но извне
Я действительно запутался с моей фактической настройкой ipv6 в моей домашней локальной сети. От моего провайдера я получаю префикс ipv6 /54. Этот префикс назначается интерфейсу WAN моего маршрутизатора через DHCPv6, предоставленный провайдером. Тогда интерфейс wlan0 моего маршрутизатора должен объявить этот префикс в мою локальную сеть через radvd, чтобы хосты могли выполнять SLAAC. Конфиг:
interface wlan0 {
AdvSendAdvert on;
MaxRtrAdvInterval 9;
AdvReachableTime 2000;
prefix ::/64 {
AdvAutonomous on;
DeprecatePrefix on;
};
route ::/0 {
};
};
Отныне все работает нормально. Все хосты в моей локальной сети получают адреса ipv6, а такие сайты, как whatismyip.com, показывают, что подключение хостов ipv6 работает нормально. Далее я могу пинговать ipv6-сайты, такие как ipv6.google.com.
Тем не мение. На компьютере с маршрутизацией / рекламой в моей локальной сети работает веб-сервер apache2. Этот сервер работает и назначен IP-интерфейсу WAN на порту 80 маршрутизатора. Теперь я могу проверить доступность из Интернета с помощью http://ipv6proxy.net/. Все работает отлично! Но когда я хотел бы пропинговать этот IP с хостов в моей локальной сети, чтобы я получил Destination unreachable: Address unreachable
сообщение назад...
Это проблема маршрутизации? Что еще это может быть?
1 ответ
Я наконец нашел проблему. На самом деле это была проблема маршрутизации. По умолчанию ядро Linux не принимает информацию о маршрутизации из сообщений ICMPv6, поэтому я поставил
echo 128 > /proc/sys/net/ipv6/conf/all/accept_ra_rt_info_max_plen
При желании я мог установить маршрут через интерфейс wlan вручную, используя:
route -6 add <prefix of WAN interface>/64 gw <address of wlan0 interface>
на клиенте, расположенном в локальной сети