您好,登錄后才能下訂單哦!
小編給大家分享一下Linux中如何使用arp命令,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
arp 命令用于顯示和修改 IP 到 MAC 轉換表
arp 命令 是 Address Resolution Protocol,地址解析協議,是通過解析網絡層地址來找尋數據鏈路層地址的一個網絡協議包中極其重要的網絡傳輸協議。而該命令可以顯示和修改 arp 協議解析表中的緩沖數據。
這個核心協議模塊實現RFC826中定義的 Address Resolution Protocol [譯注:即TCP/IP的第三層到第一層的地址轉換協議],用于在直接相連的網絡中換第二層硬件地址和 Ipv4 協議地址之間的轉換。 用戶除非想對其進行配置,否則一般不會直接操作這個模塊。
實際上,它提供對核心中其它協議的服務。
用戶進程可以使用 packet(7) 的 sockets,收到 ARP 包(譯注:一譯分組)。 還有一種機制是使用 netlink(7) sockets,在用戶空間管理 ARP 緩存的機制。我們也可以通過 ioctl (2) 控制任意 PF_INET socket上的 ARP 表
ARP 模塊維護一個硬件地址到協議地址映射的緩存。這個緩存有大小限制,所以不常用的和舊的記錄(Entry)將被垃圾收集器清除(garbage-collected),垃圾收集器永遠不能刪除標為永久的記錄。我們可以使用ioctls直接操縱緩沖, 并且其性狀可以用下面定義的 sysctl 調節。
如果在限定的時間(見下面的sysctl)內,一條現存映射沒有肯定反饋時, 則認為相鄰層的緩存記錄失效。 為了再次向目標發送數據,ARP將首先試著詢問本地arp進程 app_solicit 次,獲取更新了的 MAC(介質訪問控制)地址。 如果失敗,并且舊的MAC地址是已知的,則發送 ucast_solicit 次的 unicast probe。如果仍然失敗,則將向網絡廣播一個新的ARP請求,此時要 有待發送數據的隊列
如果 Linux 接到一個地址請求,而且該地址指向 Linux 轉發的地址,并且接收接口打開了代理 arp 時,Linux 將自動添加一條非永久的代理 arp 記錄;如果存在拒絕到目標的路由,則不添加代理 arp 記錄。
arp(選項)(參數)
-a # 主機 :顯示 arp 緩沖區的所有條目; -H # 地址類型 :指定 arp 指令使用的地址類型; -d # 主機 :從 arp 緩沖區中刪除指定主機的 arp 條目; -D # 使用指定接口的硬件地址; -e # 以 Linux 的顯示風格顯示 arp 緩沖區中的條目; -i # 接口 :指定要操作 arp 緩沖區的網絡接口; -s # 主機 MAC 地址 :設置指定的主機的 IP 地址與 MAC 地址的靜態映射; -n # 以數字方式顯示 arp 緩沖區中的條目; -v # 顯示詳細的 arp 緩沖區條目,包括緩沖區條目的統計信息; -f # 文件 :設置主機的 IP 地址與 MAC 地址的靜態映射。
主機:查詢 arp 緩沖區中指定主機的 arp 條目。
顯示arp 緩沖區內容
[root@localhost ~]# arp -v Address HWtype HWaddress Flags Mask Iface 192.168.0.134 ether 00:21:5E:C7:4D:88 C eth2 115.238.144.129 ether 38:22:D6:2F:B2:F1 C eth0 Entries: 2 Skipped: 0 Found: 2
添加靜態 arp 映射
arp -s IP MAC-ADDRESS arp -s 192.168.1.1 00:b1:b2:b3:b4:b5
刪除 arp 緩存條目
arp -d 192.168.1.1
以上是“Linux中如何使用arp命令”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。