日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle arp绑定mac地址,使用ARP命令来绑定IP和MAC地址

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle arp绑定mac地址,使用ARP命令来绑定IP和MAC地址 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用ARP命令來綁定IP和MAC地址

前言:我本來沒有想過寫關于ARP綁定的文章,坦白的說一句,在你理解ARP工作的原理時,這其實比較簡單。只是看到最近論壇很多人在問關于綁定IP和MAC地址的問題,

所以才決定寫這個文章,希望能一勞永逸

作為企業級的路由防火墻,ISA Server并沒有提供對于MAC地址的控制功能。不過,你可以使用Windows的命令ARP來實現IP地址和MAC地址的綁定。這篇文章介紹了Windows下ARP協議工作的原理,以及如何使用ARP命令來靜態綁定IP地址和MAC地址。

ISA Server中沒有提供對于MAC地址的控制功能,Why?這是因為MAC地址只能在本地網絡中使用,當數據包跨越路由器時,數據包中主機的源MAC地址就會被路由器的出站接口的MAC地址所代替,這個時候,使用MAC地址來進行控制就不適用了。所以只要是企業級的硬件或者軟件防火墻,都基本沒有提供對MAC地址的控制功能。

不過微軟也早就考慮到了這點,在Windows中,如果你安裝了TCP/IP網絡協議組件,那么你就可以執行命令ARP。ARP命令的作用是查看本機的ARP緩存、靜態綁定IP地址和MAC地址和刪除靜態綁定項。其實綁定IP地址和MAC地址的本意是為了減少ARP廣播流量,只是可以利用這一功能來控制IP地址的使用。

在這里我還是先簡單的f描述一下Windows下ARP協議的工作原理。ARP協議(Address Resolve Protocol,地址解析協議)工作在TCP/IP協議的第二層-數據鏈路層,用于將IP地址轉換為網絡接口的硬件地址(媒體訪問控制地址,即MAC地址)。

無論是任何高層協議的通訊,最終都將轉換為數據鏈路層硬件地址的通訊。

每臺主機都具有一個用于緩存MAC地址的ARP緩存列表,你可以使用命令ARP -a或ARP -g來查看當前的ARP緩存列表。此ARP緩存列表是動態更新的,默認情況下,當其中的緩存項超過兩分鐘沒有活動時,此緩存項就會超時被刪除。你可以使用ARP -s來靜態綁定IP地址和MAC地址,不過在Windows server 2003和XP以前的Windows系統中,就算你設置了靜態MAC地址綁定項,同樣會通過接收其他主機的數據包而更新已經綁定的項。

在Windows server 2003和XP中,靜態綁定的項不會被動態更新,直到TCP/IP協議終止為止,例如重啟計算機

。如果要創建永久的靜態MAC地址綁定項,你可以寫一個腳本文件來執行ARP靜態綁定,然后使用計劃任務在啟動計算機時執行該腳本即可。

例如A主機的IP地址為192.168.0.1,它現在需要與IP為192.168.0.8的主機(主機B)進行通訊,那么將進行以下動作:

A主機查詢自己的ARP緩存列表, 如果發現具有對應于目的IP地址192.168.0.8的MAC地址項,則直接使用此MAC地址項構造并發送以太網數據包,如果沒有發現對應的MAC地址項則繼續下一步;

A主機發出ARP解析請求廣播,目的MAC地址是FF:FF:FF:FF:FF:FF,請求IP為192.168.0.8的主機回復MAC地址;

B主機收到ARP解析請求廣播后,回復給A主機一個ARP應答數據包,其中包含自己的IP地址和MAC地址;

A接收到B主機的ARP回復后,將B主機的MAC地址放入自己的ARP緩存列表,然后使用B主機的MAC地址作為目的MAC地址,B主機的IP地址(192.168.0.8)作為目的IP地址, 構造并發送以太網數據包;

如果A主機還要發送數據包給192.168.0.8, 由于在ARP緩存列表中已經具有IP地址192.168.0.8的MAC地址,所以A主機直接使用此MAC地址發送數據包,而不再發送ARP解析請求廣播;當此緩存地址項超過兩分鐘沒有活動(沒有使用)后,此ARP緩存將超時被刪除。

默認情況下ARP緩存的超時時限是兩分鐘,你可以在注冊表中進行修改。可以修改的鍵值有兩個,都位于

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

修改的鍵值:

鍵值1:ArpCacheLife,類型為Dword,單位為秒,默認值為120

鍵值2:ArpCacheMinReferencedLife,類型為Dword,單位為秒,默認值為600

注意:這些鍵值默認是不存在的,如果你想修改,必須自行創建;

修改后重啟計算機后生效

如果ArpCacheLife的值比ArpCacheMinReferencedLife的值大,那么ARP緩存的超時時間設置為ArpCacheLife的值;如果ArpCacheLife的值不存在或者比ArpCacheMinReferencedLife的值小,那么對于未使用的ARP緩存,超時時間設置為120秒;對于正在使用的ARP緩存,超時時間則設置為ArpCacheMinReferencedLife的值。

下圖是我們的試驗網絡結構,ISA Server作為一個邊緣防火墻,內部局域網(192.168.0.0/24)通過ISA Server接入Internet。在這個試驗中,我將在ISA Server上綁定內部客戶True的IP地址192.168.0.8和MAC地址,這樣,當True不在線時,另外一個內部客戶Fake就算修改自己的IP地址為True的IP地址192.168.0.8,也不能通過ISA Server來上網。

各計算機的TCP/IP設置如下,本次試驗不涉及DNS解析,各服務器的DNS服務器設置為空,在試驗之前已經確認了網絡連接工作正常:

ISA 2004 Firewall:

LAN Interface:

IP:192.168.0.1/24

DG:None

MAC:00:03:47:F4:FC:E7

True(將離線):

IP:192.168.0.8/24

DG:192.168.0.1

MAC:00:0D:60:C3:05:34

Fake(將修改IP地址為192.168.0.8):

IP:192.168.0.8/24

DG:192.168.0.1

MAC:00:06:D0:06:05:47

首先,我在ISA Server上使用ARP -S來綁定True的IP地址和MAC地址,運行命令:

ARP -s 192.168.0.8 00-0D-60-C3-05-34

然后執行ARP -a來查看ARP緩存列表,結果如下圖所示。你可以看到在ARP緩存列表中IP地址192.168.0.8的類型為static,這表明它是靜態項。此時,我們在ISA Server上的綁定就成功了。

現在我們在客戶機Fake上,將自己的IP地址修改為192.168.0.8,然后Ping ISA Server:

C:\Documents and Settings\admin>ipconfig /all

Windows IP Configuration

Host Name . . . . . . . . . . . . : anonymous

Primary Dns Suffix . . . . . . . :

Node Type . . . . . . . . . . . . : Unknown

IP Routing Enabled. . . . . . . . : No

WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter 本地連接:

Connection-specific DNS Suffix . :

Description . . . . . . . . . . . : Intel(R) PRO/100 VE Network Connection

Physical Address. . . . . . . . . : 00-06-D0-06-05-47

Dhcp Enabled. . . . . . . . . . . : No

IP Address. . . . . . . . . . . . : 192.168.0.8

Subnet Mask . . . . . . . . . . . : 255.255.255.0

Default Gateway . . . . . . . . . : 192.168.0.1

DNS Servers . . . . . . . . . . . : 192.168.0.1

C:\Documents and Settings\admin>ping 192.168.0.1 -n 2

Pinging 192.168.0.1 with 32 bytes of data:

Request timed out.

Request timed out.

Ping statistics for 192.168.0.1:

Packets: Sent = 2, Received = 0, Lost = 2 (100% loss),

Ping超時,Why?從Sniffer上捕獲的數據包可以更清楚的進行說明:

下圖是捕獲的數據包,它描述了Fake(192.168.0.8) Ping 192.168.0.1的全部過程:

由于Fake(00:06:D0:06:05:47)沒有192.168.0.1的MAC地址,所以Fake發送ARP地址解析請求廣播,詢問192.168.0.1的MAC地址是什么;

ISA Server(00:03:47:F4:FC:E7)使用ARP應答回復Fake(00:06:D0:06:05:47),告訴Fake自己的IP地址(192.168.0.1)和MAC地址;

獲得192.168.0.1的MAC地址后,Fake(192.168.0.8)向192.168.0.1發送PING請求數據包;

192.168.0.1向192.168.0.8回復PING回復數據包;

Fake(192.168.0.8)再次向192.168.0.1發送PING請求數據包;

192.168.0.1再次向192.168.0.8回復PING回復數據包;

這一切看起來沒有任何問題?那為什么Fake的Ping會超時呢?

這一切從表明上看是沒有任何問題,但是仔細看捕獲的數據包的以太網頭部,你就會發現問題所在:

首先,我們看第三個數據包,Fake(192.168.0.8)向192.168.0.1發送的Ping請求,如下圖所示,Fake以自己的MAC地址為源MAC地址、192.168.0.1的MAC地址(00:03:47:F4:FC:E7)為目的MAC地址發送數據包,這沒有任何問題。

那么看看第四個ISA Server回復的Ping回復數據包呢,源MAC地址是ISA Server的MAC地址(00:03:47:F4:FC:E7),這也沒有問題,但是注意看目的MAC地址,00:0D:60:C3:05:34是離線的客戶機True的MAC地址。還記得我們在ISA Server上做的IP地址(192.168.0.8)和MAC地址綁定嗎?

ISA Server直接使用自己ARP緩存中的靜態綁定項來發送數據,而不是使用收到的Ping請求數據包中的源MAC地址來作為目的地址。

因此,Fake認為此數據包不是發給自己的,不會處理此數據包,所以認為沒有Ping回復數據包,自然就是超時了。

最后說一下,

我不推薦大家使用靜態IP地址和MAC地址的綁定,這會帶來更多的管理負荷。你可以利用ISA Server強大的身份驗證功能,結合IP地址來進行管理,這樣具有更好的效果

。也請不要在論壇問我ARP命令是如何使用的,Windows的幫助是最好的老師。

總結

以上是生活随笔為你收集整理的oracle arp绑定mac地址,使用ARP命令来绑定IP和MAC地址的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。