Ubuntu IPv6 ping self daje nieznanego hosta

3

Utknąłem, próbując sprawić, aby IPv6 działał na nowej instalacji Ubuntu 16.04 (Xenial Xerus). Mój scenariusz jest bardzo prosty - próba pingowania lokalnego adresu IPv6.

$ ifconfig
enp0s25   Link encap:Ethernet  HWaddr b8:ae:ed:77:91:fa
          inet6 addr: fe80::ba94:3d5e:9929:4c6e/64 Scope:Link

i

$ ping6 -c 5 -I enp0s25 fe80::ba94:3d5e:9929:4c6e/64

prowadzi do

unknown host

Jak rozwiązać problem?

jws
źródło
Bonk ... Próbowałem tego i dostałem nieważny argument, ale w tym czasie nie sprecyzowałem - ja również. Dzięki!
jws
FYI: ifconfigjest przestarzałe. Chcesz użyć ip addresslub ip azamiast tego.
Bakuriu,

Odpowiedzi:

8

Działa z / 64 usuniętym i -I określonym. / 64 odnosi się do liczby bitów w masce i nie powinien być używany w pingach.

$ ping6 -c 1 -I enp0s25 fe80::ba94:3d5e:9929:4c6e
PING fe80::ba94:3d5e:9929:4c6e(fe80::ba94:3d5e:9929:4c6e) from fe80::ba94:3d5e:9929:4c6e enp0s25: 56 data bytes
64 bytes from fe80::ba94:3d5e:9929:4c6e: icmp_seq=1 ttl=64 time=0.043 ms

Zamiast tego można podać adres interfejsu lokalnego -I, dołączając %i nazwę interfejsu:

$ ping6 fe80::ba94:3d5e:9929:4c6e%enp0s25
PING fe80::ba94:3d5e:9929:4c6e%enp0s25(fe80::ba94:3d5e:9929:4c6e) 56 data bytes
64 bytes from fe80::ba94:3d5e:9929:4c6e: icmp_seq=1 ttl=64 time=0.027 ms
64 bytes from fe80::ba94:3d5e:9929:4c6e: icmp_seq=2 ttl=64 time=0.059 ms
...

Te kombinacje nie działają:

$ ping6 -c 1 -I enp0s25 fe80::ba94:3d5e:9929:4c6e/64
unknown host

lub

$ ping6 fe80::ba94:3d5e:9929:4c6e
connect: Invalid argument
jws
źródło
1
Czy to odpowiedź czy kontynuacja? Ta strona nie jest forum . To think tank .
Peter Mortensen,
1
@PeterMortensen to poprawna odpowiedź. Aby wysłać ping na lokalny adres sieciowy, musisz określić interfejs. Aby użyć adresu IP6 z kolorem różowym, nie należy podawać sufiksu /.
eckes
@PeterMortensen To jest całkowicie poprawna odpowiedź na pytanie. W rzeczywistości jest to nawet lepsza odpowiedź niż ta opublikowana później. Ta odpowiedź podaje przykłady prawidłowej składni i wskazuje, że istnieją dwa różne sposoby określania interfejsu.
kasperd
8

Nie należy używać /64adresu w pingu. Byłoby to równoważne z użyciem długości maski lub maski w komendzie ping dla IPv4. Podejrzewam, że polecenie ping próbowało zinterpretować to jako nazwę hosta.

Ron Maupin
źródło