ip命令是每個Linux系統管理員熟知的網絡接口配置的超級工具。它可用于接口關閉與開啟,分配和刪除ip地址以及ARP路由緩存管理等等。
ip命令已安裝在所有現代Linux發行版,它是iproute2軟件的一部分。這里的網絡接口也就是我們常說的網卡。
ip命令
ip命令的語法是ip [ OPTIONS ] OBJECT { COMMAND | help }
,OBJECT
是您要管理的對象類型。最常用的對象是。link
/l
顯示和修改網絡接口信息。
address
/a
顯示和修改IP地址信息。route
/r
顯示和更改路由表信息。neigh
/n
顯示和操作ARP表。
對象可以以完整或縮寫形式書寫。ip OBJECT help
命令打印每個對象子命令和參數列表。
在配置網絡接口時,必須以root用戶或具有sudo權限用戶運行命令,否則將打印消息RTNETLINK answers: Operation not permitted
。
使用ip命令設置的配置不是永久的。系統重啟后,所有更改都將丟失。對于永久設置,您需要編輯特定于發行版的配置文件或將命令添加到啟動腳本。
ip 命令查看IP地址
使用addr
對象操作時,ip
命令的形式是ip addr [ COMMAND ] ADDRESS dev IFNAME
的形式。
最常用的addr
對象操作的命令是show,add和del。分別是打印IP地址的信息,添加IP地址,刪除IP。
ip addr show
顯示所有網絡接口的列表以及關聯的IP地址,show
命令列出所有接口設備。
如果輸入ip addr
,您將獲得相同的輸出。如果您想以IPv4
或IPv6
IP地址查看IP地址,請運行命令ip -4 addr
或ip -6 addr
。
如要獲取指定接口的IP地址信息,請運行命令ip addr show
后跟接口設備名稱。例如命令ip addr show dev eth0
查詢eth0
接口的IP地址信息。
ip addr show #eq ip addr
ip -4 addr
ip -6 addr
ip addr show dev eth0
ip 命令修改IP地址
現在已經知道如何查看接口的IP地址,看看如何為網絡接口分配或者修改IP地址。
修改IP地址命令語法是ip addr add ADDRESS dev IFNAME
。其中IFNAME
是接口名稱,ADDRESS
是您要分配給接口的IP地址。
例如命令sudo ip address add 192.168.121.45/24 dev eth0
將eth0
接口的IP地址設置為192.168.121.45
,子網掩碼是24。
要確認設置的IP地址是否正確,請運行命令ip -4 addr show dev eth0
或ip -4 a show dev eth0
。
sudo ip address add 192.168.121.45/24 dev eth0
ip addr show dev eth0
成功時命令不會顯示任何輸出。如果接口不存在,您將獲得Cannot find device "eth0"
。
在Linux您可以為同一接口分配多個地址,使用ip
命令。要為接口分配多個IP地址,你需要運行多次ip
命令即可。
例如命令sudo ip address add 192.168.121.241/24 dev eth0
和sudo ip address add 192.168.121.45/24 dev eth0
。
sudo ip address add 192.168.121.241/24 dev eth0
sudo ip address add 192.168.121.45/24 dev eth0
ip addr show dev eth0
ip 命令刪除IP地址
現在了解ip
命令對接口ip地址另個常用的操作刪除。從接口中刪除IP地址的語法是ip addr dev ADDRESS dev IFNAME
。
其中IFNAME
是網絡接口設備的名稱,ADDRESS
是您要從接口中刪除的IP地址。
例如命令sudo ip address del 192.168.121.45/24 dev eth0
從eth0
網絡接口刪除地址192.168.121.45/24
。
sudo ip address del 192.168.121.45/24 dev eth0
ip addr show dev eth0
ip 命令查看接口信息
這里所說的接口也就是我們常說的網卡。ip命令也可以用于管理和顯示網絡接口的狀態。
對網絡接口的操作對象是link
對象。與link
對象工作時,最常用的對象子命令是show
,set
,add
和del
。
show
打印網絡接口的信息,set
設置網絡接口的狀態,例如啟用與關閉,add
添加網絡接口,del
刪除網絡接口。
ip link show
要顯示所有網絡接口的信息。這些信息包括MTU,接口狀態啟用或者關閉,網關等。
ip link show
與ip addr show
不同的是ip link show
不會打印接口的IP地址的信息。
要獲取指定網絡接口的信息,請運行命令ip link show dev
后接接口名稱。例如命令ip link show dev eth0
查詢eth0
的信息。
ip link show
ip link show dev eth0
ip 命令啟用與關閉接口
對網絡接口還有一個常用的操作是啟用或關閉接口,在遠程服務器操作時你應該小心使用此操作。
啟用或者關閉接口的命令形式是ip link set dev {DEVICE} {up|down}
,{DEVICE}
是接口的名稱。{up|down}
設置接口的狀態。
命令ip link set eth0 up
啟用eth0
接口,如果需要關閉,請運行命令ip link set eth0 down
。
ip link set eth0 up
ip link set eth0 down
ip 命令查看路由表
ip命令除了管理接口,也可以用于管理內核路由表。要分配,刪除和顯示內核路由表,請使用route
對象。
使用route
對象時最常用的子命令是list
,add
和del
。list
列出路由表信息,add
添加路由到路由表,del
從路由表刪除路由。
有三個不同命令查看路由表信息,分別是ip route
,ip route list
,ip route list SELECTOR
。
在沒有指定選擇器SELECTOR時,ip route list
命令將列出內核的所有路由記錄。
例如命令ip route list 172.17.0.0/16
顯示指定IP地址是172.17.0.0/16
的路由。
ip route
ip route list
ip route list SELECTOR
ip route list 172.17.0.0/16
ip 命令添加/設置路由
如果要向路由表添加新記錄,可以使用ip命令的子命令route add
后跟網絡或設備名稱。
例如命令ip route add 192.168.121.0/24 via 192.168.121.1
添加192.168.121.1作為到達192.168.121.0/24的網關。
ip route add 192.168.121.0/24 dev eth0
命令添加eth0
作為到到達192.168.121.0/24的網關。
要為接口設置默認路由,請使用default
關鍵詞。例如命令ip route add default via 192.168.121.1 dev eth0
設置eth0
的默認路由是192.168.121.1
。
ip route add 192.168.121.0/24 via 192.168.121.1
ip route add 192.168.121.0/24 dev eth0
ip route add default via 192.168.121.1 dev eth0
ip 命令刪除路由
刪除路由的語法與添加時相同。要從路由表中刪除記錄,可以使用ip
子命令route del
后跟網絡或者接口設備名稱。
例如命令ip route del 192.168.121.0/24 via 192.168.121.1
命令刪除到達192.168.121.0/24的路由。
要刪除默認路由,和設置默認路由一樣請使用default關鍵詞。例如命令ip route del default
刪除默認路由。
ip route del 192.168.121.0/24 via 192.168.121.1
ip route del default
結論
至此,您應該很好地理解如何使用Linux ip命令。
-
Linux
+關注
關注
87文章
11351瀏覽量
210498 -
IP
+關注
關注
5文章
1722瀏覽量
150019 -
命令
+關注
關注
5文章
697瀏覽量
22126
發布評論請先 登錄
相關推薦
Linux的常用網絡命令
Linux系統命令
Linux系統命令指南
linux的ip命令是什么
![<b class='flag-5'>linux</b>的<b class='flag-5'>ip</b><b class='flag-5'>命令</b>是什么](https://file.elecfans.com/web1/M00/BD/37/o4YBAF7PDB-AQcS3AAAOt7VRmcA470.jpg)
評論