arp命令使用

2021-07-26 16:26:30 字數 3947 閱讀 2548

arp

[功能]

管理系統的arp快取。

[描述]

用來管理系統的arp快取,常用的命令包括:

arp: 顯示所有的表項。

arp  -d  address: 刪除乙個arp表項。

arp  -s address hw_addr: 設定乙個arp表項。

常用引數:

-a 使用bsd形式輸出。(沒有固定的列)

-n 使用數字形式顯示ip位址,而不是預設的主機名形式。

-d 不是指定硬體位址而是指定乙個網路介面的名稱,表項將使用相應介面的mac位址。一般用來設定arp**。

-h type, --hw-type type: 指定檢查特定型別的表項,預設type為ether,還有其他型別。

-i if, --device if: 指定設定哪個網路介面上面的arp表項。

-f filename: 作用同'-s',不過它通過檔案來指定ip位址和mac位址的繫結。檔案中每行分別是主機和mac,中間以空格分割。如果沒有指定檔名稱,則使用/etc/ethers檔案。

以下例子中,用主機名稱的地方也可以用點分10進製的ip位址來表示。另外輸出結果中用"c"表示arp快取內容,"m"表示永久性表項,"p"表示公共的表項。

[舉例]

*檢視arp表:

#arp

address                  hwtype  hwaddress           flags mask            iface

hostname1                ether   44:37:e6:97:92:16   c                     eth0

hostname2                ether   00:0f:fe:43:28:c5   c                     eth0

hostname3                ether   00:1d:92:e3:d5:ee   c                     eth0

hostname4                ether   00:1d:0f:11:f2:a5   c                     eth0

這裡,flags中的"c"代表此表專案是快取記憶體中的內容,快取記憶體中的內容過一段時間(一般20分鐘)會清空,而"m"則表示靜態表項,靜態表項的內容不會過一段時間被清空。

*檢視arp表,並且用ip顯示而不是主機名稱:

# arp -n

address                  hwtype  hwaddress           flags mask            iface

10.1.10.254              ether   00:1d:92:e3:d5:ee   c                     eth0

10.1.10.253              ether   44:37:e6:9b:2c:53   c                     eth0

10.1.10.178              ether   00:1b:78:83:d9:85   c                     eth0

10.1.10.119              ether   00:1d:0f:11:f2:a5   c                     eth0

這裡,對於上面的條目,假設當我們"ping 10.1.10.1"通過之後,arp中會多一條"10.1.10.1"相關的資訊。

*檢視arp表,顯示主機名稱和ip:

#arp -a

ns.amazon.esdl.others.com (10.1.10.254) at 00:1d:92:e3:d5:ee [ether] on eth0

server.amazon.eadl.others.com (10.1.10.253) at 44:37:e6:9b:2c:53 [ether] on eth0

d2-baijh.amazon.esdl.others.com (10.1.10.178) at 00:1b:78:83:d9:85 [ether] on eth0

aplab.local (10.1.10.119) at 00:1d:0f:11:f2:a5 [ether] on eth0

# arp -s 10.1.1.1 00:11:22:33:44:55:66

這裡,如果網路無法達到,那麼會報告錯誤,具體如下:

root@quietheart:/home/lv-k# arp -s 10.1.1.1 00:11:22:33:44:55:66

siocsarp: network is unreachable

root@quietheart:/home/lv-k# arp -n

address                  hwtype  hwaddress           flags mask            iface

10.1.10.254              ether   00:1d:92:e3:d5:ee   c                     eth0

10.1.10.253              ether   44:37:e6:9b:2c:53   c                     eth0

10.1.10.178              ether   00:1b:78:83:d9:85   c                     eth0

10.1.10.119              ether   00:1d:0f:11:f2:a5   c                     eth0

實際上,如果"arp -s"設定成功之後,會增加乙個flags為"cm"的表項,有些系統靜態條目不會因為arp響應而更新,而快取記憶體中的條目會因此而更新。如果想要手工設定沒有"m",那麼用"temp"選項,例如:"arp -s ip mac temp"類似的命令,實踐發現,如果已經設定過ip了,那麼再設定也不會改變其flags。

*刪除乙個arp表項:

# arp -d 10.1.10.118

root@quietheart:~# arp -n

address                  hwtype  hwaddress           flags mask            iface

10.1.10.118              ether   00:25:9c:c2:79:90   cm                    eth0

10.1.10.254              ether   00:1d:92:e3:d5:ee   c                     eth0

root@quietheart:~# arp -d 10.1.10.118

root@quietheart:~# arp -n

address                  hwtype  hwaddress           flags mask            iface

10.1.10.118                      (incomplete)                              eth0

10.1.10.254              ether   00:1d:92:e3:d5:ee   c   

*刪除eth0上面的乙個arp表項:

# arp -i eth0 -d 10.1.10.118

[其它]

#/usr/sbin/arp -i eth0 -ds 10.0.0.2 eth1 pub

當eth0收到ip位址為10.0.0.2的請求時,將會用eth1的mac位址回答。

例如,雙網絡卡機器執行這條命令:

/usr/sbin/arp -i eth0 -ds 10.0.0.2 eth1 pub

會多一項:

10.0.0.2                 *       mp                    eth0

ARP命令詳解

source arp是乙個重要的tcp ip協議,並且用於確定對應ip位址的網絡卡實體地址。實用arp命令,我們能夠檢視本地計算機或另一台計算機的arp快取記憶體中的當前內容。此外,使用arp命令,也可以用人工方式輸入靜態的網絡卡物理 ip位址對,我們可能會使用這種方式為預設閘道器和本地伺服器等常用...

ARP 定義及命令

作用 主機將arp請求廣播到網路上的所有主機,並接收返回訊息,確定目標ip位址的實體地址,同時將ip位址和硬體位址存入本機arp快取中,下次請求時直接查詢arp快取。特點 arp是建立在網路中各個主機互相信任的基礎上的,網路上的主機可以自主傳送arp應答訊息,其他主機收到應答報文時不會檢測該報文的真...

Linux命令學習手冊 arp命令

功能 管理系統的arp快取。描述 用來管理系統的arp快取,常用的命令包括 arp 顯示所有的表項。arp d address 刪除乙個arp表項。arp s address hw addr 設定乙個arp表項。常用引數 a 使用bsd形式輸出。沒有固定的列 n 使用數字形式顯示ip位址,而不是預設...