昨日まで全く問題なかったのに。
> ping his_pc
とやると、
Ping request could not find host his_pc. Please check the name and try again.
とか返ってくる。以前も同じようなことが数回発生した記憶があるが、解決方法については明確な記憶はなく、記録もとらなかったので、例によって後悔しきり。 よって、今回は本稿に記すことにした。
で、次に
> nslookup his_pc
とやると、
Server: internal_dns.company.jp
Address: 192.168.0.254
Name: his_pc
Address: 192.168.0.100
と返ってくる。で、
> ping 192.168.0.100
をやると、正常に応答がある。
よって内部DNSは正しく動作しているようだ。が、前回、内部DNSのレコードが誤って記録されていて、それを修正することにより治ったような記憶が微かにあるので、念のため内部DNSを調べてみる。やはりhis_pc のレコードの内部IPは正しく登録されている。次に第3のPCから
> ping his_pc
をやると正しく応答するので、小生のPCのDNSキャッシュ(DNSリゾルバ・キャッシュ)がおかしいようだ。そこで
> ipconfig /displaydns
をやってみると、予想に反し、his_pc に関する情報が表示されない。予想では his_pc レコードに誤った値が登録されている筈だったのだが… 本来、ipconfig /displaydns についてちゃんと調べるべきなんだろうが、今日は時間切れ、つか面倒になってきたので、エイヤ!と
> ipconfig /dnsflush
を実行。 すると、名前解決できるようになった。
1年後、同様の現象が起こったら、その時は /displaydns やDNSリゾルバ・キャッシュをちゃんと調べようと誓うのだった。
(土屋)
参考リンク
TCP/IPの設定を確認する「ipconfig」
WindowsのDNSキャッシュをクリアする方法 ‐ CClener の新バージョンではキャッシュが見れるらしい