ip命令是每個(gè)Linux系統(tǒng)管理員熟知的網(wǎng)絡(luò)接口配置的超級工具。它可用于接口關(guān)閉與開啟,分配和刪除ip地址以及ARP路由緩存管理等等。
ip命令已安裝在所有現(xiàn)代Linux發(fā)行版,它是iproute2軟件的一部分。這里的網(wǎng)絡(luò)接口也就是我們常說的網(wǎng)卡。
ip命令
ip命令的語法是ip [ OPTIONS ] OBJECT { COMMAND | help }
,OBJECT
是您要管理的對象類型。最常用的對象是。link
/l
顯示和修改網(wǎng)絡(luò)接口信息。
address
/a
顯示和修改IP地址信息。route
/r
顯示和更改路由表信息。neigh
/n
顯示和操作ARP表。
對象可以以完整或縮寫形式書寫。ip OBJECT help
命令打印每個(gè)對象子命令和參數(shù)列表。
在配置網(wǎng)絡(luò)接口時(shí),必須以root用戶或具有sudo權(quán)限用戶運(yùn)行命令,否則將打印消息RTNETLINK answers: Operation not permitted
。
使用ip命令設(shè)置的配置不是永久的。系統(tǒng)重啟后,所有更改都將丟失。對于永久設(shè)置,您需要編輯特定于發(fā)行版的配置文件或?qū)⒚钐砑拥絾?dòng)腳本。
ip 命令查看IP地址
使用addr
對象操作時(shí),ip
命令的形式是ip addr [ COMMAND ] ADDRESS dev IFNAME
的形式。
最常用的addr
對象操作的命令是show,add和del。分別是打印IP地址的信息,添加IP地址,刪除IP。
ip addr show
顯示所有網(wǎng)絡(luò)接口的列表以及關(guān)聯(lián)的IP地址,show
命令列出所有接口設(shè)備。
如果輸入ip addr
,您將獲得相同的輸出。如果您想以IPv4
或IPv6
IP地址查看IP地址,請運(yùn)行命令ip -4 addr
或ip -6 addr
。
如要獲取指定接口的IP地址信息,請運(yùn)行命令ip addr show
后跟接口設(shè)備名稱。例如命令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地址
現(xiàn)在已經(jīng)知道如何查看接口的IP地址,看看如何為網(wǎng)絡(luò)接口分配或者修改IP地址。
修改IP地址命令語法是ip addr add ADDRESS dev IFNAME
。其中IFNAME
是接口名稱,ADDRESS
是您要分配給接口的IP地址。
例如命令sudo ip address add 192.168.121.45/24 dev eth0
將eth0
接口的IP地址設(shè)置為192.168.121.45
,子網(wǎng)掩碼是24。
要確認(rèn)設(shè)置的IP地址是否正確,請運(yùn)行命令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
成功時(shí)命令不會顯示任何輸出。如果接口不存在,您將獲得Cannot find device "eth0"
。
在Linux您可以為同一接口分配多個(gè)地址,使用ip
命令。要為接口分配多個(gè)IP地址,你需要運(yùn)行多次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地址
現(xiàn)在了解ip
命令對接口ip地址另個(gè)常用的操作刪除。從接口中刪除IP地址的語法是ip addr dev ADDRESS dev IFNAME
。
其中IFNAME
是網(wǎng)絡(luò)接口設(shè)備的名稱,ADDRESS
是您要從接口中刪除的IP地址。
例如命令sudo ip address del 192.168.121.45/24 dev eth0
從eth0
網(wǎng)絡(luò)接口刪除地址192.168.121.45/24
。
sudo ip address del 192.168.121.45/24 dev eth0
ip addr show dev eth0
ip 命令查看接口信息
這里所說的接口也就是我們常說的網(wǎng)卡。ip命令也可以用于管理和顯示網(wǎng)絡(luò)接口的狀態(tài)。
對網(wǎng)絡(luò)接口的操作對象是link
對象。與link
對象工作時(shí),最常用的對象子命令是show
,set
,add
和del
。
show
打印網(wǎng)絡(luò)接口的信息,set
設(shè)置網(wǎng)絡(luò)接口的狀態(tài),例如啟用與關(guān)閉,add
添加網(wǎng)絡(luò)接口,del
刪除網(wǎng)絡(luò)接口。
ip link show
要顯示所有網(wǎng)絡(luò)接口的信息。這些信息包括MTU,接口狀態(tài)啟用或者關(guān)閉,網(wǎng)關(guān)等。
ip link show
與ip addr show
不同的是ip link show
不會打印接口的IP地址的信息。
要獲取指定網(wǎng)絡(luò)接口的信息,請運(yùn)行命令ip link show dev
后接接口名稱。例如命令ip link show dev eth0
查詢eth0
的信息。
ip link show
ip link show dev eth0
ip 命令啟用與關(guān)閉接口
對網(wǎng)絡(luò)接口還有一個(gè)常用的操作是啟用或關(guān)閉接口,在遠(yuǎn)程服務(wù)器操作時(shí)你應(yīng)該小心使用此操作。
啟用或者關(guān)閉接口的命令形式是ip link set dev {DEVICE} {up|down}
,{DEVICE}
是接口的名稱。{up|down}
設(shè)置接口的狀態(tài)。
命令ip link set eth0 up
啟用eth0
接口,如果需要關(guān)閉,請運(yùn)行命令ip link set eth0 down
。
ip link set eth0 up
ip link set eth0 down
ip 命令查看路由表
ip命令除了管理接口,也可以用于管理內(nèi)核路由表。要分配,刪除和顯示內(nèi)核路由表,請使用route
對象。
使用route
對象時(shí)最常用的子命令是list
,add
和del
。list
列出路由表信息,add
添加路由到路由表,del
從路由表刪除路由。
有三個(gè)不同命令查看路由表信息,分別是ip route
,ip route list
,ip route list SELECTOR
。
在沒有指定選擇器SELECTOR時(shí),ip route list
命令將列出內(nèi)核的所有路由記錄。
例如命令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 命令添加/設(shè)置路由
如果要向路由表添加新記錄,可以使用ip命令的子命令route add
后跟網(wǎng)絡(luò)或設(shè)備名稱。
例如命令ip route add 192.168.121.0/24 via 192.168.121.1
添加192.168.121.1作為到達(dá)192.168.121.0/24的網(wǎng)關(guān)。
ip route add 192.168.121.0/24 dev eth0
命令添加eth0
作為到到達(dá)192.168.121.0/24的網(wǎng)關(guān)。
要為接口設(shè)置默認(rèn)路由,請使用default
關(guān)鍵詞。例如命令ip route add default via 192.168.121.1 dev eth0
設(shè)置eth0
的默認(rèn)路由是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 命令刪除路由
刪除路由的語法與添加時(shí)相同。要從路由表中刪除記錄,可以使用ip
子命令route del
后跟網(wǎng)絡(luò)或者接口設(shè)備名稱。
例如命令ip route del 192.168.121.0/24 via 192.168.121.1
命令刪除到達(dá)192.168.121.0/24的路由。
要?jiǎng)h除默認(rèn)路由,和設(shè)置默認(rèn)路由一樣請使用default關(guān)鍵詞。例如命令ip route del default
刪除默認(rèn)路由。
ip route del 192.168.121.0/24 via 192.168.121.1
ip route del default
結(jié)論
至此,您應(yīng)該很好地理解如何使用Linux ip命令。
-
Linux
+關(guān)注
關(guān)注
87文章
11207瀏覽量
208712 -
IP
+關(guān)注
關(guān)注
5文章
1610瀏覽量
149243 -
命令
+關(guān)注
關(guān)注
5文章
676瀏覽量
21965
發(fā)布評論請先 登錄
相關(guān)推薦
評論