web-dev-qa-db-ja.com

digから「Gotbadpacket:FORMERR」を取得するのはなぜですか?

Dig google.comなどのDNSクエリを初めて実行すると、良い答えが得られます。ただし、後続のクエリは

;; Got bad packet: FORMERR
55 bytes
25 d8 81 a0 00 01 00 01 00 00 00 01 06 67 6f 6f          %............goo
67 6c 65 03 63 6f 6d 00 00 01 00 01 c0 0c 00 01          gle.com.........
00 01 00 00 01 16 00 04 d8 3a d1 8e 00 00 00 00          .........:......
00 00 00 00 00 00 00             

                    .......

このエラーの原因は何ですか?この問題は私のコンピューターでのみ発生するようです。同じネットワーク上の他のコンピューターから同じクエリを実行しても、このエラーは発生しません。

3
sbrattla

断続的に成功するDNSクエリの解決と多数の失敗が見られました。次のいずれかのエラーが発生します。

_;; Got bad packet: bad label type
78 bytes

;; Got bad packet: FORMERR
94 bytes

;; Got bad packet: bad compression pointer
78 bytes
_

私の場合、それは私の_resolv.conf_の悪いリゾルバーでした。私は実際に私のDigで多くの問題を見ました。これは私のローカルwifiルーターで正しく構成されていないリゾルバーでした。もう一度オフにしてからオンにしてみてください。私の場合、IPアドレスを正しく解決していないISPネットワークネームサーバーを使用するようにハードコーディングしていました。

私はいくつかの問題を抱えていました。まず、Huaweiのwifi/LTEルーターがDHCP経由でデフォルトの_resolv.conf_として設定されました。

ネットワークマネージャーでDHCPを介して設定されているこれを無効にする必要があります。 _nameserver 192.168.8.1_。そして、google/CloudflareのオープンDNSリゾルバーを使用するように強制します。

_cat /etc/resolv.conf
# Generated by NetworkManager
search one.one.one.one google-public-dns-a.google.com
nameserver 192.168.8.1
nameserver 1.1.1.1
nameserver 1.0.0.1
# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 8.8.8.8
nameserver 8.8.4.4
_

2つ目の問題は、_search one.one.one.one google-public-dns-a.google.com_の検索ドメインが含まれていたことです。私は長い間このラップトップでこのwifi接続を使用していませんでした、そして私がそこに置いた設定は私がやっていたので実験からのものでした。それは私が見ていた問題に追加されました。 _bad label type_

ネットワークマネージャでネットワークを変更する必要があります。 [IPv4設定]-> [方法]-> [自動(DHCP)アドレスのみ]。これはAutomatic (DHCP)であってはなりません。これには、DHCPサーバーが設定するものがすべて含まれるためです。ローカルネットワークDNSサーバーを含み、ルーターからIP _192.168.8.1_。

私はインターネット上で最高のオープンDNSリゾルバーの2つを入れました googles public dnscloudflares public dns

設定を保存して、ネットワークに再接続します。

私の_resolv.conf_はその後このようになりました。

_cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 8.8.8.8
# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 8.8.4.4
_

その時点以降、DNS解決は正しく機能していました。

1
nelaaro