私はワイヤレスドライバーに取り組んでいます。しかし、この質問は単なる一般的なネットワークの質問だと思います。最初のpingpacktの奇妙なコンテンツが見られました。これはarpリクエストであり、ターゲットIPアドレスがソースIPアドレスと同じです。私はここでは一種の初心者です。これは正常ですか?何が悪いのでしょうか?
ワイヤレスカードのIPを192.168.0.10として手動で構成しました。そして、192.168.0.1にpingを実行しようとしています。 ARPパケットで、次のようなコンテンツが表示されました。
Address Resolution Protocol (request)
Hardware type: Ethernet (0x0001)
Protocol type: IP (0x0800)
Hardware size: 6
Protocol size: 4
Opcode: request (0x0001)
Sender MAC address: 00:21:e8:71:70:f4 (00:21:e8:71:70:f4)
Sender IP address: 192.168.0.10(192.168.0.10)
Target MAC address: 00:00:00:00:00:00 (00:00:00:00:00:00)
Target IP address: 192.168.0.10(192.168.0.10)
これが私のセットアップのダンプです。
# ifconfig mlan0
mlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ssid hwteam
bssid 00:1b:11:4f:42:5f chan 11
address: 00:21:e8:71:70:f4
media: IEEE802.11 autoselect
status: active
# ifconfig mlan0 192.168.0.10 netmask 255.255.255.0
# ifconfig mlan0
mlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ssid hwteam
bssid 00:1b:11:4f:42:5f chan 11
address: 00:21:e8:71:70:f4
media: IEEE802.11 autoselect
status: active
inet 192.168.0.10 netmask 0xffffff00 broadcast 192.168.0.255
# ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1): 56 data bytes
----192.168.0.1 PING Statistics----
3 packets transmitted, 0 packets received, 100% packet loss
# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Mtu Interface
127.0.0.1 127.0.0.1 UH 0 4 33192 lo0
192.168.0/24 link#2 UC 1 0 - mlan0
192.168.0.1 link#2 UHLc 0 3 - mlan0
# arp -a
#
必ずしもping
コマンドに関連しているわけではありません。オペレーティングシステムは、同じネットワーク(または同じイーサネットブロードキャストドメイン)内の他のホストがあなたと同じIPアドレスを持っているかどうかを単にチェックしている可能性があります。システムがそのようなARP要求へのany応答を受信すると、アドレスの重複についてすぐにユーザーに警告します。
同じ送信元IPと宛先IPを持つARPパケットは、GratuitousARPパケットと呼ばれます。あなたはこれの使用法を読むことができます ここ
これらのパケットは、上記のリンクで説明されているように、さまざまな用途で使用されることが期待されています。しかし奇妙なことに、宛先MACはFF:FF:FF:FF:FF:FFである必要がありますが、これはセットアップには当てはまりません。