У меня в сети настроен Dnsmasq для присвоения имен различным IP-адресам IPv4 в сети.
Проверка связи с другими машинами с использованием их DNS-имен работает нормально, если у меня только что включен IPv4 на моем клиентском 64-разрядном компьютере с Windows 7 Ultimate, но когда я включаю поддержку IPv6 в списке протоколов машины Win7, я больше не могу проверять связь с машинами, использующими их DNS-имена.
Я даже попытался добавить аргумент -4 к команде ping, а также попробовал команду -S, чтобы указать исходный IP-адрес, который будет использоваться при отправке ping.
Без IPv6 на компьютере с Windows 7 включен:
C:\Console2>ping asus.leerdomain.local
Pinging asus.leerdomain.local [192.168.1.149] with 32 bytes of data:
Reply from 192.168.1.149: bytes=32 time<1ms TTL=128
Reply from 192.168.1.149: bytes=32 time<1ms TTL=128
Если IPv6 на компьютере с Windows 7 включен:
C:\utils\dig>ping asus.leerdomain.local Ping request could not
find host asus.leerdomain.local. Please check the name an d try again.
C:\utils\dig>ping -4 asus.leerdomain.local Ping request could not
find host asus.leerdomain.local. Please check the name an d try again.
C:\utils\dig>ping -4 -S192.168.1.149 asus.leerdomain.local
asus.leerdomain.local is not a valid address.
Как с включенным IPv6, так и без него на компьютере с Windows 7:
C:\utils\dig>dig asus.leerdomain.local
; <<>> DiG 9.3.2 <<>> asus.leerdomain.local
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1401
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;asus.leerdomain.local. IN A
;; ANSWER SECTION:
asus.leerdomain.local. 0 IN A 192.168.1.149
;; Query time: 1 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Thu Nov 10 14:50:01 2011
;; MSG SIZE rcvd: 55
Ваш компьютер настроен на ответ на эхо-запросы IPv4 и не отвечает на эхо-запросы IPv6. Когда IPv6 включен, другие машины получают IPv6-адрес при попытке разрешить имя, потому что IPv6 предпочтительнее. В результате они выдают эхо-запрос, но не получают ответа.
ping -4
не будет работать, потому что вы не можете выполнить пинг IPv4 на адрес IPv6.
Если вы хотите, чтобы машина отвечала на эхо-запросы IPv6, вам нужно выяснить, что ее останавливает (скорее всего, брандмауэр), и исправить конфигурацию.