LINUX.ORG.RU
решено ФорумAdmin

Не работает ping6 !!

 , , ,


0

1

Разбираюсь тут с айписэкс.

Есть две убунту в двух разных ДЦ.

Хецнер не парился со стандартами, забил на нетплан. В результате, на его ВПС внешние адреса ип6 пингуются, например гугл

ping6  2a00:1450:400f:80a::200e
PING 2a00:1450:400f:80a::200e(2a00:1450:400f:80a::200e) 56 data bytes
64 bytes from 2a00:1450:400f:80a::200e: icmp_seq=1 ttl=50 time=27.7 ms

у него в /etc/netplan/01-netcfg.yaml почти пусто

# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens4:
dhcp4: yes
Они всё прописали в /etc/network/interfaces.d/50-cloud-init.cfg !

В другом ДЦ я решил делать по Ъ, прописал всё в
/etc/netplan/01-netcfg.yaml
и оно, удивительно, работает только наполовину. То есть адрес присвоился, netplan apply заработал, но не пингует ничего, тот же ип6 гугла, например. Алсо, сам хост не пингуется с других. себя по ип6 нормально пингует.

Мне кто-то объяснит, надо ли пилять базовую ип6 конфигурацию на несколько разных файлов, при использовании нетплан, или оно и так должно работать?

darkenshvein ★★★★★
() автор топика

но не пингует ничего, тот же ип6 гугла, например

Без ip -6 ro и traceroute6 сложно понять что у тебя там и где не работает...

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

момент
ip -6
2a00:b700::/48 dev ens18 proto kernel metric 256 pref medium
fe80::/64 dev ens18 proto kernel metric 256 pref medium
default via 2a00:b700::5:1 dev ens18 proto static metric 1024 pref medium

traceroute6 2a00:1450:400f:80a::200e
traceroute to 2a00:1450:400f:80a::200e (2a00:1450:400f:80a::200e) from 2a00:b700::5:6f, 30 hops max, 24 byte packets
sendto: Invalid argument
1 traceroute: wrote 2a00:1450:400f:80a::200e 24 chars, ret=-1
*sendto: Invalid argument
traceroute: wrote 2a00:1450:400f:80a::200e 24 chars, ret=-1
*sendto: Invalid argument
traceroute: wrote 2a00:1450:400f:80a::200e 24 chars, ret=-1

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

/etc/systemd/network/05-eth0.network нет, к слову говоря.

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от Pinkbyte


darkshvein@trainingjustcause:~$ ping6 2a00:b700::5:1
PING 2a00:b700::5:1(2a00:b700::5:1) 56 data bytes
From 2a00:b700::5:6f icmp_seq=1 Destination unreachable: Address unreachable

sudo ip6tables -vn -L
[sudo] password for darkshvein:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

From 2a00:b700::5:6f icmp_seq=1 Destination unreachable: Address unreachable
я уже пробовал пинговать шлюз, не пингуется. хз, может тоже закрыт для пинга.

Различить закрыт ли он для пинга или не доступен совсем(например из-за ошибки конфигурации) - легко

Покажи выхлоп:

ip -6 neigh show

Может роутить надо через link-local адрес шлюза(если там вообще есть router advertisement конечно)... Это ж ipv6, тут могут упорыши закрыть и не такое...

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 3)
Ответ на: комментарий от Pinkbyte

ip -6 neigh show
2a00:b700::220 dev ens18 lladdr 66:65:37:65:38:36 STALE
fe80::6465:37ff:fe65:3836 dev ens18 lladdr 66:65:37:65:38:36 STALE
fe80::21f:ceff:fef5:a990 dev ens18 lladdr 00:1f:ce:f5:a9:90 router STALE
2a00:b700::5:1 dev ens18 FAILED

шлюз того...не отвечает?

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

router STALE

ну попингуй fe80::21f:ceff:fef5:a990(это link-local твоего шлюза) и посмотри что в tcpdump происходит - если адрес по-прежнему будет STALE тады ой, шлюз не отвечает.

2a00:b700::5:1 dev ens18 FAILED

А на такой адрес в сегменте вообще никто не откликается

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 2)
Ответ на: комментарий от darkenshvein

ping6 fe80::21f:ceff:fef5:a990
connect: Invalid argument

Для пинга по link-local адресам нужно ОБЯЗАТЕЛЬНО указывать имя выходного интерфейса(потому что теоретически один и тот же link-local адрес может оказаться за разными физическими интерфейсами)

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

спасибо.
да, так пинг идёт
ping6 -I ens18 fe80::21f:ceff:fef5:a990
PING fe80::21f:ceff:fef5:a990(fe80::21f:ceff:fef5:a990) from fe80::4441:c6ff:fe6d:e383%ens18 ens18: 56 data bytes
64 bytes from fe80::21f:ceff:fef5:a990%ens18: icmp_seq=1 ttl=64 time=0.662 ms
64 bytes from fe80::21f:ceff:fef5:a990%ens18: icmp_seq=2 ttl=64 time=0.714 ms

darkenshvein ★★★★★
() автор топика
Последнее исправление: darkenshvein (всего исправлений: 1)
Ответ на: комментарий от darkenshvein

Попробуй указать fe80::21f:ceff:fef5:a990 в качестве адреса шлюза по умолчанию. Но вообще по идее это должно прийти через router advertisement - может у тебя отключено принятие?

sysctl net.ipv6.conf.ens18.accept_ra

Если включен роутинг IPv6(net.ipv6.conf.all.forwarding), то оно должно быть 2, а не 1

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

sysctl net.ipv6.conf.ens18.accept_ra
net.ipv6.conf.ens18.accept_ra = 0

фигня какая то(
сейчас перепропишу

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от Pinkbyte

короче.
прописал
net.ipv6.conf.ens18.accept_ra = 1
в sysctl.conf не помогло
добавил гейтвей6 в нетплане fe80::21f:ceff:fef5:a990
и всё заработало, даже пинг этой машины из хецнера прошёл.
спасибо большое!

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

прописал net.ipv6.conf.ens18.accept_ra = 1

А форвардинг-то включен? Если да - то прописывание 1 и не поможет, надо прописывать 2.

Логика в следующем - если машина объявляет себя роутером - она перестает принимать анонсы по умолчанию, если не указать этого явно

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Я это к чему - если хостер сменит роутинг - то адрес через который ты маршрутизируешься сменится и будет ой. Поэтому лучше полагаться на router advertisement когда есть такая возможность

Pinkbyte ★★★★★
()
11 августа 2019 г.
Ответ на: комментарий от Pinkbyte

подскажи пожалуйста ещё вот что,
если команда
ip -6 neigh show
выдаёт очень много адресов, как понять,какой из них твой шлюз?

darkenshvein ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

ээээ... а с каких пор шлюз определяется по NDP/ARP-записям? Начни с ip -6 route show, а потом смотри какой MAC соответствует этому адресу в ip -6 neigh show с пометкой REACHABLE

Pinkbyte ★★★★★
()

Есть две убунту в двух разных ДЦ.

Хватит по ночам вламываться в чужие ДЦ :D

LINUX-ORG-RU ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.