Назад | Перейти на главную страницу

NDP прокси, прерывистый адрес недоступен

Я настроил проксирование NDP на своей капле Digital Ocean, чтобы позволить контейнерам получать общедоступные адреса IPv6. Кажется, что это работает, но иногда я получаю ошибки «Назначение недостижимо» (адрес недоступен). Похоже, что пока это происходит, таблица соседей на хосте контейнера показывает доступность маршрутизатора как INCOMPLETE (показать как x:x:x:x::1). Затем случайным образом он снова заработает. Почему это происходит и что я могу сделать, чтобы это исправить?

Конфигурация хоста:

# ip -6 address show
<...>
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 x:x:x:x::x:5000/64 scope global 
       valid_lft forever preferred_lft forever
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
<...>
# ip -6 route show | grep -v fe80::/64
x:x:x:x::x:5000/124 dev br0 metric 128  pref medium
x:x:x:x::/64 dev eth0 proto kernel metric 256  pref medium
default via x:x:x:x::1 dev eth0 metric 1024  pref medium
# ip -6 neigh show proxy
x:x:x:x::x:5000 dev br0  proxy
x:x:x:x::x:5001 dev eth0  proxy
# sysctl net.ipv6.conf.{all,br0,eth0}.{forwarding,proxy_ndp}
net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.all.proxy_ndp = 0
net.ipv6.conf.br0.forwarding = 1
net.ipv6.conf.br0.proxy_ndp = 1
net.ipv6.conf.eth0.forwarding = 1
net.ipv6.conf.eth0.proxy_ndp = 1

Конфигурация гостя:

# ip -6 address show
<...>
2: host0@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 x:x:x:x::x:5001/124 scope global
<...>
# ip -6 route show | grep -v fe80::/64
x:x:x:x::x:5000/124 dev host0  proto kernel  metric 256 
default via x:x:x:x::x:5000 dev host0  metric 1024