LINUX.ORG.RU
ФорумAdmin

Странность с «соседями» IPv6 на одном интерфейсе

 


0

1

Всем привет.

Суть такова: Есть wlan2 интерфейс на который коннектятся WiFi клиенты и получают по DHCP свои IPv4 адреса. И всё работает. С IPv4 проблем не испытываю.
Но есть на этом интерфейсе и IPv6 адреса. Так вот RA как-то странно создаёт таблицу соседей, точнее не создаёт, естественно не работоспособную.
Почему не работает поиск соседей?
ip6tables пустой с ACCEPT на всех правилах.
Что не так? Попытка создать соседа руками ни к чему не приводит.

Теперь немного практики:

# ifconfig wlan2
wlan2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.20.1  netmask 255.255.255.0  broadcast 192.168.20.255
        inet6 2a0d:xxxx:yyyy:5556:ea94:f6ff:fee5:4673  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::ea94:f6ff:fee5:4673  prefixlen 64  scopeid 0x20<link>
        ether e8:94:f6:e5:46:73  txqueuelen 1000  (Ethernet)
        RX packets 335523  bytes 185499775 (185.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 419162  bytes 314471237 (314.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
# ping fe80::c60b:cbff:fe21:7b66
PING fe80::c60b:cbff:fe21:7b66(fe80::c60b:cbff:fe21:7b66) 56 data bytes
From fe80::204:23ff:fea5:c1b0%eth1 icmp_seq=1 Destination unreachable: Address unreachable
From fe80::204:23ff:fea5:c1b0%eth1 icmp_seq=2 Destination unreachable: Address unreachable
From fe80::204:23ff:fea5:c1b0%eth1 icmp_seq=3 Destination unreachable: Address unreachable
^C
--- fe80::c60b:cbff:fe21:7b66 ping statistics ---
4 packets transmitted, 0 received, +3 errors, 100% packet loss, time 3065ms

# ip neigh | grep 66
192.168.20.2 dev wlan2 lladdr c4:0b:cb:21:7b:66 REACHABLE

# tcpdump -i wlan2 -n ip6
21:02:54.794583 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:02:55.822671 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:02:55.912124 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor advertisement, tgt is fe80::c60b:cbff:fe21:7b66, length 32
21:02:56.842579 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:02:57.866582 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:02:57.940205 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor solicitation, who has fe80::ea94:f6ff:fee5:4673, length 32
21:02:58.689508 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor solicitation, who has fe80::ea94:f6ff:fee5:4673, length 32
21:02:58.890617 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:02:59.440145 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor solicitation, who has fe80::ea94:f6ff:fee5:4673, length 32
21:02:59.914582 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:03:00.192254 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor solicitation, who has fe80::ea94:f6ff:fee5:4673, length 32
21:03:00.938584 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:03:00.952697 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor solicitation, who has fe80::ea94:f6ff:fee5:4673, length 32
21:03:01.005204 IP6 fe80::c60b:cbff:fe21:7b66 > fe80::ea94:f6ff:fee5:4673: ICMP6, neighbor advertisement, tgt is fe80::c60b:cbff:fe21:7b66, length 32
21:03:01.962617 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:03:02.986584 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32
21:03:04.010579 IP6 fe80::ea94:f6ff:fee5:4673 > ff02::1:ff21:7b66: ICMP6, neighbor solicitation, who has fe80::c60b:cbff:fe21:7b66, length 32

# sysctl net.ipv6.conf
net.ipv6.conf.wlan2.accept_dad = 1
net.ipv6.conf.wlan2.accept_ra = 1
net.ipv6.conf.wlan2.accept_ra_defrtr = 1
net.ipv6.conf.wlan2.accept_ra_from_local = 0
net.ipv6.conf.wlan2.accept_ra_min_hop_limit = 1
net.ipv6.conf.wlan2.accept_ra_mtu = 1
net.ipv6.conf.wlan2.accept_ra_pinfo = 1
net.ipv6.conf.wlan2.accept_ra_rt_info_max_plen = 0
net.ipv6.conf.wlan2.accept_ra_rt_info_min_plen = 0
net.ipv6.conf.wlan2.accept_ra_rtr_pref = 1
net.ipv6.conf.wlan2.accept_redirects = 1
net.ipv6.conf.wlan2.accept_source_route = 0
net.ipv6.conf.wlan2.addr_gen_mode = 0
net.ipv6.conf.wlan2.autoconf = 0
net.ipv6.conf.wlan2.dad_transmits = 1
net.ipv6.conf.wlan2.disable_ipv6 = 0
net.ipv6.conf.wlan2.disable_policy = 0
net.ipv6.conf.wlan2.drop_unicast_in_l2_multicast = 0
net.ipv6.conf.wlan2.drop_unsolicited_na = 0
net.ipv6.conf.wlan2.enhanced_dad = 1
net.ipv6.conf.wlan2.force_mld_version = 0
net.ipv6.conf.wlan2.force_tllao = 0
net.ipv6.conf.wlan2.forwarding = 1
net.ipv6.conf.wlan2.hop_limit = 64
net.ipv6.conf.wlan2.ignore_routes_with_linkdown = 0
net.ipv6.conf.wlan2.keep_addr_on_down = 0
net.ipv6.conf.wlan2.max_addresses = 16
net.ipv6.conf.wlan2.max_desync_factor = 600
net.ipv6.conf.wlan2.mc_forwarding = 0
net.ipv6.conf.wlan2.mldv1_unsolicited_report_interval = 10000
net.ipv6.conf.wlan2.mldv2_unsolicited_report_interval = 1000
net.ipv6.conf.wlan2.mtu = 1500
net.ipv6.conf.wlan2.ndisc_notify = 0
net.ipv6.conf.wlan2.ndisc_tclass = 0
net.ipv6.conf.wlan2.proxy_ndp = 0
net.ipv6.conf.wlan2.regen_max_retry = 3
net.ipv6.conf.wlan2.router_probe_interval = 60
net.ipv6.conf.wlan2.router_solicitation_delay = 1
net.ipv6.conf.wlan2.router_solicitation_interval = 4
net.ipv6.conf.wlan2.router_solicitation_max_interval = 3600
net.ipv6.conf.wlan2.router_solicitations = -1
net.ipv6.conf.wlan2.seg6_enabled = 0
net.ipv6.conf.wlan2.seg6_require_hmac = 0
net.ipv6.conf.wlan2.suppress_frag_ndisc = 1
net.ipv6.conf.wlan2.temp_prefered_lft = 86400
net.ipv6.conf.wlan2.temp_valid_lft = 604800
net.ipv6.conf.wlan2.use_oif_addrs_only = 0
net.ipv6.conf.wlan2.use_tempaddr = 2

Минимум:
ping fe80::c60b:cbff:fe21:7b66
Я не знаю в какой ОС так работает без указания имени интерфейса. Но ладно вы видите
fe80::204:23ff:fea5:c1b0%eth1
Причем тут wlan2 ? Указывайте имя интерфейса.
Правильно:
ping6 fe80::c60b:cbff:fe21:7b66%wlan2

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

Debian 10, отлично работает ping.

дык я и говорю, что он шлёт не туда. Причём я создаю соседа (грубо аналог ARP) руками и толку от этого НОЛЬ.

Ваш вариант тоже не работает.

Если посмотреть в мой пост, там есть tcpdump на wlan2 - видно, что система пытется опросить соседа, но что-то идет не так.

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