У меня есть хост с дополнительными IP-адресами. Мы назовем их 51.52.53.54 и 71.72.73.74 и два туннеля ipv6 с подсетями / 48.
Провайдер туннелей дает пример конфигурации, и я настроил свой первый туннель как:
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address 2001:470:a1b1:xxxx::2
netmask 64
endpoint 216.66.80.30
local 51.52.53.54
ttl 255
gateway 2001:470:a1b1:xxxx::1
После розжига туннель рабочий.
Я могу добавить к этому he-ipv6 устройству столько адресов ipv6, сколько я хочу, и все они работают.
Итак, я настроил второй туннель с этой информацией:
auto he-ipv6-2
iface he-ipv6-2 inet6 v4tunnel
address 2001:470:c2d2:xxxx::2
netmask 64
endpoint 216.66.84.46
local 71.72.73.74
ttl 255
gateway 2001:470:c2d2:xxxx::1
И когда я пытаюсь выполнить ping, traceroute или tcpdump любой IP из этой подсети, я ничего не вижу.
Хотя, если я отключу свой первый туннель на локальном ip 51.52.53.54, то мой второй туннель на локальном ip 71.72.73.74 заработает!
Я перепроверил тонны информации о маршрутизации и пробовал разные вещи, но все равно не повезло.
Любая помощь?
HE, вероятно, фильтрует трафик, поступающий по туннелям, чтобы убедиться, что адрес источника совпадает с распределением сети.
Теперь, с вашей стороны, похоже, что маршрут по умолчанию указывает на первый туннель. Когда вы пытаетесь пропинговать что-либо с ПК, которому назначена сеть из второго туннеля, он все равно пройдет через первый туннель (так работает обычная маршрутизация) и будет брошен на пол путем фильтрации входящего туннеля. Когда вы закроете туннель, таблица маршрутизации изменится, так как предыдущий маршрут по умолчанию будет удален, а маршрут по умолчанию для второго туннеля теперь используется и трафик проходит.
Вы можете обойти это, используя маршрутизацию на основе политик и взглянув на ip-rule
и ip-route
страницы руководства. ip rule
команда позволит вам выбрать таблицу маршрутизации на основе исходного IP / IPv6-адреса и ip route
позволит вам построить альтернативную таблицу маршрутизации.