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

Тестирование IPv6 между Linux-системами в локальной сети

Я пытаюсь настроить тестовую площадку IPv6. Очень просто: всего два компьютера с Ubuntu Linux, которые общаются друг с другом по локальной сети. Оба устройства имеют рабочее соединение IPv4, но мне не удалось использовать SSH поверх IPv6. Следуя этому КАК, Я указал адреса обеих машин в локальном диапазоне сайта (fec0: :). На первом ящике я запустил:

sudo ifconfig eth0 inet6 add fec0::1/64

А на второй я побежал:

sudo ifconfig eth0 inet6 add fec0::2/64

Затем я проверил таблицу маршрутизации, и у каждого из них есть маршрут к этой сети, проходящий через интерфейс eth0. Затем я добавил запись в /etc/hosts указывая от второго поля к первому. Но когда я затем пытаюсь подключиться по SSH из второго ящика к первому, клиент SSH просто зависает. Ни ошибки, ни чего. Если я сбегу tcpdump на клиенте я вообще не вижу трафика IPv6. В чем дело?

Обратите внимание, что если я использую SSH для ip6-localhost адрес от серверной машины к себе, он работает нормально, так что это не похоже на проблему SSH. Любая помощь очень ценится.

Во-первых, если у вас есть ufw установлен, проверьте /etc/default/ufw чтобы увидеть, если IPV6=no опция установлена. Вам нужно будет установить это на yes или ufw по умолчанию будет защищать весь трафик IPv6.

После этого попробуйте выполнить базовую диагностику, о которой вам следует знать при изучении IPv6.

Первое, что вам нужно сделать, это установить ndisc6 пакет, а затем попробуйте сделать запрос соседа. (это эквивалент выполнения запроса ARP в IPv4)

sudo apt-get install ndisc6

Обратите внимание, вам понадобится universe репозиторий включен для этого.

Затем с вашей первой машины:

ndisc6 fec0::2 eth0

Это гарантирует, что вы сможете найти MAC-адрес для fec0::2.

(Обратите внимание ndisc6 пакет также поставляется с удобной утилитой под названием rdisc6 что может быть полезно, если в вашей сети есть маршрутизатор IPv6; он проверит, правильно ли отвечает маршрутизатор.)

После проверки того, что обнаружение соседей работает, следующая попытка ping6 fec0::2.

Другая диагностика, которую вы можете опубликовать, если у вас все еще есть проблемы:

/sbin/ip -6 addr
/sbin/ip -6 neigh
/sbin/ip -6 route
sudo /sbin/ip6tables -L

Нам понадобится немного больше информации, чтобы действительно помочь - для начала, можете ли вы успешно выполнить эхо-запрос между двумя хостами по IPv6? Если вы не можете пинговать, у вас есть более серьезная проблема, которую нужно решить ...

Предполагая, что вы жестяная банка ping (базовое подключение работает) дважды проверьте в netstat (или с помощью SSHing на адрес fec0 :: N из локального окна), чтобы убедиться, что ваш демон SSH прослушивает адреса IPv6, которые вы пытаетесь использовать. Возможно, вам придется отредактировать файл sshd.conf и / или перезапустить sshd, чтобы он понял, что есть новые адреса v6 для прослушивания.