菜鸟我正好知道这回事情.人道"人之患好为人师"
手里忍不住,就写点东西吧.
我也很忙.又没有MM,又没有MONEY....晕倒有点跑题.
OK,闲话少说,切如正题.
要了解网络执法官的原理.
就要先了解局域网的通信的原理.
前面我们看到了.在以太网上传输的都是具有以太网头的数据包.
也就是局域网上连个机器相互通讯就要知道对方的MAC地址.
看看具体的过成
首先.netbug要知道o3的IP地址.(这就要用到dns协议,暂时我们略过)
netbug知道了o3的IP后,就可以组装IP协议层以上的包了.
但前面已经说了.要在以太网上传输数据,就必须有一个的MAC,
要找MAC,netbug首先在自己的arp缓存里找是否有这个条目.
大家可以在cmd环境下.
C:\>arp -a
Interface: 192.168.0.225 --- 0x2
Internet Address Physical Address Type
192.168.0.4 00-80-ad-77-e2-9a dynamic
192.168.0.9 00-e0-4c-39-15-f2 dynamic
192.168.0.10 00-e0-4c-39-19-a5 dynamic
192.168.0.12 00-10-b5-4d-4b-b7 dynamic
看到没有?
如果IP所对应的MAC在这里没有.那netbug就会用到我们以前所讲的arp协议.
发送一个广播.如果在局域网上发现中间的IP和自己的IP符合,就发回ARP回应.
ff ff ff ff ff ff 00 e0 4c 82 8f ba 08 06 00 01
08 00 06 04 00 01 00 e0 4c 82 8f ba c0 a8 00 27
00 00 00 00 00 00 c0 a8 00 01 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20
00 01:ethern
08 00:IP
06:hardware address length
04:Protocol address length
00 01:Opertion type
00 e0 4c 82 8f ba :sender hardware address
c0 a8 00 27: sender IP address 192.168.0.39
00 00 00 00 00 00:receiver hardware address 00 00 00 00 00 00 broadcast
c0 a8 00 01:receiver ip address 192.168.0.1
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20:the data fixed.