Jump to content
  • 0
imedvedev

local ipv6 адрес попадает в /etc/resolv.conf

Question

Столкнулся с проблемой при получении ipv6 от провайдера. При подключении в файл /etc/resolv.conf на локальный компьютер попадают следующие строки

nameserver fe80::52ff:20ff:fe19:4d04
nameserver 192.168.34.1

При этом time dig +short ya.ru показывает 2 секунды, вместо 0m0.052s на time dig +short ya.ru @192.168.34.1
На сколько мне удалось выяснить, вся проблема кроется вот в этом: (выполняю на пк)

ping6 fe80::52ff:20ff:fe19:4d04
PING6(56=40+8+8 bytes) fe80::4a:bc7d:a359:9bf8%en0 --> fe80::52ff:20ff:fe19:4d04
ping6: sendmsg: No route to host
ping6: wrote fe80::52ff:20ff:fe19:4d04 16 chars, ret=-1
ping6: sendmsg: No route to host
ping6: wrote fe80::52ff:20ff:fe19:4d04 16 chars, ret=-1
ping6: sendmsg: No route to host
ping6: wrote fe80::52ff:20ff:fe19:4d04 16 chars, ret=-1
^C
--- fe80::52ff:20ff:fe19:4d04 ping6 statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss

При этом сам роутер себя пингует (выполняю на роутере)

~ # ping6 fe80::52ff:20ff:fe19:4d04
PING fe80::52ff:20ff:fe19:4d04 (fe80::52ff:20ff:fe19:4d04): 56 data bytes
64 bytes from fe80::52ff:20ff:fe19:4d04: seq=0 ttl=64 time=0.421 ms
64 bytes from fe80::52ff:20ff:fe19:4d04: seq=1 ttl=64 time=0.359 ms
64 bytes from fe80::52ff:20ff:fe19:4d04: seq=2 ttl=64 time=0.347 ms
^C
--- fe80::52ff:20ff:fe19:4d04 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.347/0.375/0.421 ms
~ # 

На вкладке "Межсетевой экран" настройки отсутствуют, ip6tables не трогал, необходимо добавить правила? Если выполнить show ipv6 addresses в ответе роутера содержится вот такое

              address: 
                  address: 2a02:2698:5422:4d21:52ff:20ff:fe19:4d04
               link-local: fe80::52ff:20ff:fe19:4d04
                interface: Home
           valid-lifetime: 85896

Маршруты

(config)> show ipv6 routes

           route_: 
          destination: ::/0
              gateway: fe80::ea4:2ff:fe17:ec01
            interface: PPPoE0

           route_: 
          destination: 2a02:2698:5422:4d21::/64
              gateway: ::
            interface: Home

Все параметры из статьи в конфиге присутствуют (кроме net.ipv6.conf.all.accept_ra 1). При этом гугл по ipv6 пингуется нормально и с локального компьютера и с роутера и в браузере открывается

ping6 ipv6.google.com
PING6(56=40+8+8 bytes) 2a02:2698:5422:4d21:f805:f32:53d7:2ad1 --> 2a00:1450:4011:805::1008
16 bytes from 2a00:1450:4011:805::1008, icmp_seq=0 hlim=56 time=36.932 ms
16 bytes from 2a00:1450:4011:805::1008, icmp_seq=1 hlim=56 time=36.352 ms
16 bytes from 2a00:1450:4011:805::1008, icmp_seq=2 hlim=56 time=41.822 ms
^C
--- ipv6.l.google.com ping6 statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 36.352/38.369/41.822/2.453 ms

Локальный компьютер пингуется с роутера
На пк:

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	ether f0:18:98:1b:b3:11 
	inet6 fe80::4a:bc7d:a359:9bf8%en0 prefixlen 64 secured scopeid 0xa 
	inet 192.168.34.26 netmask 0xffffff00 broadcast 192.168.34.255
	inet6 2a02:2698:5422:4d21:1441:f95f:a231:2683 prefixlen 64 autoconf secured 
	inet6 2a02:2698:5422:4d21:f805:f32:53d7:2ad1 prefixlen 64 autoconf temporary 
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect
	status: active
ping6 fe80::4a:bc7d:a359:9bf8
PING6(56=40+8+8 bytes) fe80::4a:bc7d:a359:9bf8%en0 --> fe80::4a:bc7d:a359:9bf8
16 bytes from fe80::4a:bc7d:a359:9bf8%en0, icmp_seq=0 hlim=64 time=0.077 ms

ping6 2a02:2698:5422:4d21:1441:f95f:a231:2683
PING6(56=40+8+8 bytes) 2a02:2698:5422:4d21:1441:f95f:a231:2683 --> 2a02:2698:5422:4d21:1441:f95f:a231:2683
16 bytes from 2a02:2698:5422:4d21:1441:f95f:a231:2683, icmp_seq=0 hlim=64 time=0.108 ms

ping6 2a02:2698:5422:4d21:f805:f32:53d7:2ad1
PING6(56=40+8+8 bytes) 2a02:2698:5422:4d21:f805:f32:53d7:2ad1 --> 2a02:2698:5422:4d21:f805:f32:53d7:2ad1
16 bytes from 2a02:2698:5422:4d21:f805:f32:53d7:2ad1, icmp_seq=0 hlim=64 time=0.108 ms

На роутере:

~ # ping6 2a02:2698:5422:4d21:f805:f32:53d7:2ad1
PING 2a02:2698:5422:4d21:f805:f32:53d7:2ad1 (2a02:2698:5422:4d21:f805:f32:53d7:2ad1): 56 data bytes
64 bytes from 2a02:2698:5422:4d21:f805:f32:53d7:2ad1: seq=0 ttl=64 time=3.333 ms
64 bytes from 2a02:2698:5422:4d21:f805:f32:53d7:2ad1: seq=1 ttl=64 time=2.748 ms
64 bytes from 2a02:2698:5422:4d21:f805:f32:53d7:2ad1: seq=2 ttl=64 time=7.820 ms
^C
--- 2a02:2698:5422:4d21:f805:f32:53d7:2ad1 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 2.748/4.633/7.820 ms
~ # ping6 2a02:2698:5422:4d21:1441:f95f:a231:2683
PING 2a02:2698:5422:4d21:1441:f95f:a231:2683 (2a02:2698:5422:4d21:1441:f95f:a231:2683): 56 data bytes
64 bytes from 2a02:2698:5422:4d21:1441:f95f:a231:2683: seq=0 ttl=64 time=1.874 ms
64 bytes from 2a02:2698:5422:4d21:1441:f95f:a231:2683: seq=1 ttl=64 time=3.248 ms
64 bytes from 2a02:2698:5422:4d21:1441:f95f:a231:2683: seq=2 ttl=64 time=2.155 ms
^C
--- 2a02:2698:5422:4d21:1441:f95f:a231:2683 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 1.874/2.425/3.248 ms
~ # ping6 fe80::4a:bc7d:a359:9bf8
PING fe80::4a:bc7d:a359:9bf8 (fe80::4a:bc7d:a359:9bf8): 56 data bytes
64 bytes from fe80::4a:bc7d:a359:9bf8: seq=0 ttl=64 time=5.892 ms
64 bytes from fe80::4a:bc7d:a359:9bf8: seq=1 ttl=64 time=3.261 ms
64 bytes from fe80::4a:bc7d:a359:9bf8: seq=2 ttl=64 time=2.753 ms
^C
--- fe80::4a:bc7d:a359:9bf8 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 2.753/3.968/5.892 ms
~ #

Как наладить пинг с пк на роутер?

Edited by imedvedev

Share this post


Link to post
Share on other sites

7 answers to this question

  • 1

Для linklocal пинга нужно обязательно интерфейс указать через % после адреса

типа так 

ping6 fe80::52ff:20ff:fe19:4d04%eth0
  • Thanks 2

Share this post


Link to post
Share on other sites
  • 0

Да, это работает, спасибо. Eсли в /etc/resolv.conf прописать

nameserver fe80::52ff:20ff:fe19:4d04%en0
nameserver 192.168.34.1

time dig +short ya.ru и time dig +short ya.ru @fe80::52ff:20ff:fe19:4d04%en0 выполняется за 0m0.015s. Но, очевидно, в этот файл должен автоматически прилетать корректный адрес роутера, но не прилетает

Edited by imedvedev

Share this post


Link to post
Share on other sites
  • 0
1 час назад, imedvedev сказал:

Да, это работает, спасибо. Eсли в /etc/resolv.conf прописать


nameserver fe80::52ff:20ff:fe19:4d04%en0
nameserver 192.168.34.1

time dig +short ya.ru и time dig +short ya.ru @fe80::52ff:20ff:fe19:4d04%en0 выполняется за 0m0.015s. Но, очевидно, в этот файл должен автоматически прилетать корректный адрес роутера, но не прилетает

По хорошему это клиент должен цеплять, роутер об внутренних интерфейсах клиента ничего не знает.

ЗЫ Надо погуглить как там все устроено.

Edited by r13

Share this post


Link to post
Share on other sites
  • 0

Быть может это должен разруливать именно dig и это его баг, а мне не о чем волноваться? 🙂

Share this post


Link to post
Share on other sites
  • 0
28 минут назад, imedvedev сказал:

Быть может это должен разруливать именно dig и это его баг, а мне не о чем волноваться? 🙂

Вроде как это должен разруливать IPv6 Neighbor Discovery

ip -6 neighbor show

Есть в выводе искомый адрес?

PS Вот похожая на вашу проблема:

https://askubuntu.com/questions/819343/link-local-fe80-addresses-without-scope-make-their-way-into-etc-resolv-conf

Edited by r13

Share this post


Link to post
Share on other sites
  • 0

На маке нет утилиты ip 🙂, и дам днс-кэша не получается вытащить (в каждом релизе меняют способ и утилиты для этого 🙂)

Еще что заметил, если в файле /etc/resolv.conf оставить только

nameserver fe80::52ff:20ff:fe19:4d04

То ping ya.ru и ping6 ya.ru работают нормально, а вот nslookup ya.ru и dig +short ya.ru не работают совсем. Страницы в хроме и сафари открываются без проблем

Edited by imedvedev

Share this post


Link to post
Share on other sites
  • 0

Ну раз в хроме при единственном v6 dns работоспособность сохраняется, то да можно погуглить в сторону работы этих утилит с link-local адресами, возможно они предполагают явное указание интерфейса через параметры

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×