Я пытаюсь лучше понять IPv6 .
Во-первых, я пробую ifconfig и получаю следующее:
eth0 Link encap:Ethernet HWaddr XXXXXXX
inet addr:X.X.X.X Bcast:X.X.X.X Mask:XXXXXXXXX
inet6 addr: XXXX::XXXX:XXX:XXXX:XXX/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:138752772 errors:0 dropped:0 overruns:0 frame:0
TX packets:67894054 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:67347428211 (67.3 GB) TX bytes:168368922639 (168.3 GB)
Interrupt:43
Итак, из вышесказанного я могу предположить, что IPv6 включен (поправьте меня, если я здесь не прав).
Теперь, если я использую, ping localhost
я получаю:
64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.026 ms
64 bytes from localhost (127.0.0.1): icmp_req=2 ttl=64 time=0.019 ms
64 bytes from localhost (127.0.0.1): icmp_req=3 ttl=64 time=0.025 ms
...
Но когда я использую, ping6 localhost
я получаю:
unknown host
Как я могу использовать ping6
? Или, более конкретно, какие изменения нужно сделать, чтобы сделать ping6 localhost
работу (если вообще возможно)?
ifconfig
иroute
- предпочитатьip addr
иip route
, которые поддерживают больше сетевых функций и имеют более согласованный вывод.Ответы:
Краткий ответ [ rcf4291 ]
Изменения, чтобы сделать работу
ping6 localhost
Если вы хотите установить
localhost
псевдоним для обоих,ping
аping6
на вашем компьютере это не так, достаточно записать в/etc/hosts
файл обе строки:Что касается псевдонима, используемого в настоящее время в вашей системе, вы можете проверить файл hosts,
/etc/hosts
[ 1 ] или в другом месте, если в другой системе [ 2 ] .Вы можете найти
ip6-localhost
,ip6-loopback
,ipv6-localhost
,ipv6-loopback
илиlocalhost
сам по себе ...Еще несколько слов
Я действительно понимаю вашу путаницу в отношении того, что я прочитал из rfc6761 о «доменных именах специального назначения» 6.3 [ 3 ] , об имени localhost ,
поэтому следует ожидать по умолчанию, но:
На текущей обновленной и нетронутой Ubuntu 14.04.3 LTS
/etc/hosts
я нашел следующий раздел сip6-localhost
,ip6-loopback
На Suse Enterprise 10 системы я нашел
localhost
,ipv6-localhost
,ipv6-loopback
На старой Debian GNU / Linux 8.2 системы
localhost
,ip6-localhost
,ip6-loopback
Это означает, что, по моему ограниченному опыту, вы должны посмотреть в своем
/etc/host
файле и изменить его или использовать то, что вы найдете, например,источник
::1
работает на каждой из этих машин ... «Хорошая вещь в стандартах состоит в том, что у вас есть так много выбора». ASTanenbaum [ 1 ] :-) Решение будет найдено ... возможно, неправильное! ;)::1
это ip (v6), где какlocalhost
иhostname
. полностью мое мнение, но я верю, что если мы не будем придерживаться стандарта как есть, мы столкнемся со многими проблемами в ближайшем будущем. Я действительно надеюсь, что после обгона ipv6 нам не придется печатать, например,ipv6.google.com
вместоgoogle.com
google.com
.Пытаться:
Результат будет выглядеть так:
Ubuntu 14.04.1 LTS (Trusty Tahr):
(То же самое для
ping6 -V
.)источник
iputils
не имеют отдельнойping6
утилиты, она была объединена сping
. Для этих версий используйтеping -6 ::1
или (так как::1
это не адрес IPv4)ping ::1
.-6
даже не признана.ping -V
). Возможно, ваш дистрибутив еще не обновлен. (И у BSD есть свое собственное программное обеспечение, и они не используют iputils.)localhost
имя хоста, которое разрешается по127.0.0.1
адресу Ваш/etc/hosts
файл должен иметь отдельную запись для::1
, скорее всегоlocalhost6
. Так что попробуйте это:источник
localhost
для обоих127.0.0.1
и::1
.localhost
IPv6. Имена , которые я нашел , используемые для::1
былиip6-localhost
,ip6-loopback
,localhost6
, иlocalhost6.localdomain6
./etc/hosts
:127.0.0.1 localhost
,::1 localhost
; Windows Vista идентична (за исключением размещения файлаC:\Windows\System32\drivers\etc
). MacOSX 10.9.5 добавляетfe80::1%lo0 localhost
в качестве третьего имени для него.localhost
с::1
. (Я думаю, что это будет еще более распространенным, так как дистрибутивы принимают systemd и включают nss_myhostname.)