歡迎光臨
每天分享高質量文章

12 個 ip 命令範例 | Linux 中國

一年又一年,我們一直在使用 ifconfig 命令來執行網路相關的任務,比如檢查和配置網絡卡資訊。但是 ifconfig 已經不再被維護,並且在最近版本的 Linux 中被廢除了! ifconfig 命令已經被 ip 命令所替代了。
— Pradeep Kumar


本文導航
編譯自 | https://www.linuxtechi.com/ip-command-examples-for-linux-users/ 
 作者 | Pradeep Kumar
 譯者 | lujun9972

一年又一年,我們一直在使用 ifconfig 命令來執行網路相關的任務,比如檢查和配置網絡卡資訊。但是 ifconfig 已經不再被維護,並且在最近版本的 Linux 中被廢除了! ifconfig 命令已經被 ip 命令所替代了。

ip 命令跟 ifconfig 命令有些類似,但要強力的多,它有許多新功能。ip 命令完成很多 ifconfig 命令無法完成的任務。

本教程將會討論 ip 命令的 12 中最常用法,讓我們開始吧。

案例 1:檢查網絡卡資訊

檢查網絡卡的諸如 IP 地址,子網等網路資訊,使用 ip addr show 命令:

  1. [linuxtechi@localhost]$ ip addr show

  2. [linuxtechi@localhost]$ ip a s

這會顯示系統中所有可用網絡卡的相關網路資訊,不過如果你想檢視某塊網絡卡的資訊,則命令為:

  1. [linuxtechi@localhost]$ ip addr show enp0s3

這裡 enp0s3 是網絡卡的名字。

IP-addr-show-commant-output

案例 2:啟用/禁用網絡卡

使用 ip 命令來啟用一個被禁用的網絡卡:

  1. [linuxtechi@localhost]$ sudo ip link set enp0s3 up

而要禁用網絡卡則使用 down 觸發器:

  1. [linuxtechi@localhost]$ sudo ip link set enp0s3 down

案例 3:為網絡卡分配 IP 地址以及其他網路資訊

要為網絡卡分配 IP 地址,我們使用下麵命令:

  1. [linuxtechi@localhost]$ sudo ip addr add 192.168.0.50/255.255.255.0 dev enp0s3

也可以使用 ip 命令來設定廣播地址。預設是沒有設定廣播地址的,設定廣播地址的命令為:

  1. [linuxtechi@localhost]$ sudo  ip addr add broadcast 192.168.0.255 dev enp0s3

我們也可以使用下麵命令來根據 IP 地址設定標準的廣播地址:

  1. [linuxtechi@localhost]$  sudo ip addr add 192.168.0.10/24 brd + dev enp0s3

如上面例子所示,我們可以使用 brd 代替 broadcast 來設定廣播地址。

案例 4:刪除網絡卡中配置的 IP 地址

若想從網絡卡中刪掉某個 IP,使用如下 ip 命令:

  1. [linuxtechi@localhost]$ sudo ip addr del 192.168.0.10/24 dev enp0s3

案例 5:為網絡卡新增別名(假設網絡卡名為 enp0s3)

新增別名,即為網絡卡新增不止一個 IP,執行下麵命令:

  1. [linuxtechi@localhost]$  sudo ip addr add 192.168.0.20/24 dev enp0s3 label enp0s3:1

ip-command-add-alias-linux

案例 6:檢查路由/預設閘道器的資訊

檢視路由資訊會給我們顯示資料包到達目的地的路由路徑。要檢視網路路由資訊,執行下麵命令:

  1. [linuxtechi@localhost]$  ip route show

ip-route-command-output

在上面輸出結果中,我們能夠看到所有網絡卡上資料包的路由資訊。我們也可以獲取特定 IP 的路由資訊,方法是:

  1. [linuxtechi@localhost]$ sudo ip route get 192.168.0.1

案例 7:新增靜態路由

我們也可以使用 IP 來修改資料包的預設路由。方法是使用 ip route 命令:

  1. [linuxtechi@localhost]$ sudo ip route add default via 192.168.0.150/24

這樣所有的網路資料包透過 192.168.0.150 來轉發,而不是以前的預設路由了。若要修改某個網絡卡的預設路由,執行:

  1. [linuxtechi@localhost]$ sudo ip route add 172.16.32.32 via 192.168.0.150/24 dev enp0s3

案例 8:刪除預設路由

要刪除之前設定的預設路由,開啟終端然後執行:

  1. [linuxtechi@localhost]$  sudo ip route del 192.168.0.150/24

註意: 用上面方法修改的預設路由只是臨時有效的,在系統重啟後所有的改動都會丟失。要永久修改路由,需要修改或建立 route-enp0s3 檔案。將下麵這行加入其中:

  1. [linuxtechi@localhost]$  sudo vi /etc/sysconfig/network-scripts/route-enp0s3

  2. 172.16.32.32 via 192.168.0.150/24 dev enp0s3

儲存並退出該檔案。

若你使用的是基於 Ubuntu 或 debian 的作業系統,則該要修改的檔案為 /etc/network/interfaces,然後新增 ip route add 172.16.32.32 via 192.168.0.150/24 dev enp0s3 這行到檔案末尾。

案例 9:檢查所有的 ARP 記錄

ARP,是地址解析協議Address Resolution Protocol的縮寫,用於將 IP 地址轉換為物理地址(也就是 MAC 地址)。所有的 IP 和其對應的 MAC 明細都儲存在一張表中,這張表叫做 ARP 快取。

要檢視 ARP 快取中的記錄,即連線到區域網中裝置的 MAC 地址,則使用如下 ip 命令:

  1. [linuxtechi@localhost]$  ip neigh

ip-neigh-command-linux

案例 10:修改 ARP 記錄

刪除 ARP 記錄的命令為:

  1. [linuxtechi@localhost]$ sudo ip neigh del 192.168.0.106 dev enp0s3

若想往 ARP 快取中新增新記錄,則命令為:

  1. [linuxtechi@localhost]$ sudo ip neigh add 192.168.0.150 lladdr 33:1g:75:37:r3:84 dev enp0s3 nud perm

這裡 nud 的意思是 “neghbour state”(網路鄰居狀態),它的值可以是:

◈ perm - 永久有效並且只能被管理員刪除
◈ noarp - 記錄有效,但在生命週期過期後就允許被刪除了
◈ stale - 記錄有效,但可能已經過期
◈ reachable - 記錄有效,但超時後就失效了

案例 11:檢視網路統計資訊

透過 ip 命令還能檢視網路的統計資訊,比如所有網絡卡上傳輸的位元組數和報文數,錯誤或丟棄的報文數等。使用 ip -s link 命令來檢視:

  1. [linuxtechi@localhost]$ ip -s link

ip-s-command-linux

案例 12:獲取幫助

若你想檢視某個上面例子中沒有的選項,那麼你可以檢視幫助。事實上對任何命令你都可以尋求幫助。要列出 ip 命令的所有可選項,執行:

  1. [linuxtechi@localhost]$ ip help

記住,ip 命令是一個對 Linux 系統管理來說特別重要的命令,學習並掌握它能夠讓配置網路變得容易。本教程就此結束了,若有任何建議歡迎在下麵留言框中留言。


via: https://www.linuxtechi.com/ip-command-examples-for-linux-users/

作者:Pradeep Kumar[2] 譯者:lujun9972 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

 

LCTT 譯者

lujun9972 ? ? ? ?
共計翻譯:68 篇
貢獻時間:46 天


推薦文章

< 左右滑動檢視相關文章 >

點選圖片、輸入文章 ID 或識別二維碼直達

贊(0)

分享創造快樂

© 2024 知識星球   網站地圖