偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux 中如何使用 IP 命令

系統(tǒng) Linux
老版本的 Linux 中都是使用 ifconfig 命令檢查和配置網(wǎng)絡(luò)接口,但是該命令目前已經(jīng)沒(méi)有維護(hù)了,取而代之的是 ip 命令。

[[355899]]

本文轉(zhuǎn)載自微信公眾號(hào)「Linux開(kāi)發(fā)那些事兒 」,作者LinuxThings。轉(zhuǎn)載本文請(qǐng)聯(lián)系Linux開(kāi)發(fā)那些事兒 公眾號(hào)。   

老版本的 Linux 中都是使用 ifconfig 命令檢查和配置網(wǎng)絡(luò)接口,但是該命令目前已經(jīng)沒(méi)有維護(hù)了,取而代之的是 ip 命令

ip 命令和 ifconfig 命令很相似,但是 相比起來(lái),ip命令的功能更強(qiáng)大,它能執(zhí)行多種 ifconfig 命令無(wú)法執(zhí)行的任務(wù)

本文將介紹 ip 命令常用的一些操作

顯示所有網(wǎng)絡(luò)接口信息

輸入 ip addr 或者 ip a 命令可以顯示所有的網(wǎng)絡(luò)接口信息

 

  1. [root@ecs-centos-7 ~]# ip addr 
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 
  3.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  4.     inet 127.0.0.1/8 scope host lo 
  5.        valid_lft forever preferred_lft forever 
  6.     inet6 ::1/128 scope host  
  7.        valid_lft forever preferred_lft forever 
  8. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  9.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  10.     inet 192.168.0.9/24 brd 192.168.0.255 scope global noprefixroute dynamic eth0 
  11.        valid_lft 74409sec preferred_lft 74409sec 
  12.     inet6 fe80::f816:3eff:fee0:4fb8/64 scope link  
  13.        valid_lft forever preferred_lft forever 
  14. [root@ecs-centos-7 ~]# 

上面的輸出中,可以看出系統(tǒng)目前的網(wǎng)絡(luò)接口分別是 lo 和 eth0, 前者是網(wǎng)絡(luò)環(huán)回接口,后者是常規(guī)的網(wǎng)絡(luò)接口

輸出接口信息的 字段詳解

 

  1. <BROADCAST,MULTICAST,UP,LOWER_UP>: BROADCAST 表示支持廣播, MULTICAST 表示支持多播 
  2.  
  3. UP 網(wǎng)絡(luò)接口處于開(kāi)啟狀態(tài) 
  4.  
  5. LOWER_UP 表示網(wǎng)絡(luò)電纜已插入并且已連上網(wǎng)絡(luò) 
  6.  
  7. mtu 1500: 最大傳輸?shù)膯挝?500字節(jié) 
  8.  
  9. qdisc pfifo_fast: 數(shù)據(jù)包排隊(duì) 
  10.  
  11. state UP: 接口狀態(tài)已開(kāi)啟 
  12.  
  13. qlen 1000: 傳輸隊(duì)列長(zhǎng)度 
  14.  
  15. link/ether fa:16:3e:e0:4f:b8 Mac地址 
  16.  
  17. brd ff:ff:ff:ff:ff:ff 廣播地址 
  18.  
  19. inet 192.168.0.9/24 : IPV4 
  20.  
  21. scope global: 全局有效 
  22.  
  23. dynamic eth0: 動(dòng)態(tài)分配地址 
  24.  
  25. valid_lft 74409sec: IPV4有效期 
  26.  
  27. preferred_lft 74409sec: IPV4首選生存期 
  28.  
  29. inet6 fe80::f816:3eff:fee0:4fb8/64  IPV6 
  30.  
  31. scope link: 僅在此接口上生效 

除了輸出所有的網(wǎng)絡(luò)接口信息外,還可以按照以下方式個(gè)性化輸出網(wǎng)絡(luò)接口信息

  • 按照是否支持 IPV4 或 IPV6輸出

命令 ip -4 a 會(huì)輸出只支持IPV4的接口信息

同樣,命令 ip -6 a 會(huì)輸出只支持IPV6的接口信息

  • 按照接口名字輸出

命令 ip a show eth0會(huì)輸出 eth0接口的信息

 

  1. [root@ecs-centos-7 ~]# ip a show eth0 
  2. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  3.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  4.     inet 192.168.0.9/24 brd 192.168.0.255 scope global noprefixroute dynamic eth0 
  5.        valid_lft 73494sec preferred_lft 73494sec 
  6.     inet6 fe80::f816:3eff:fee0:4fb8/64 scope link  
  7.        valid_lft forever preferred_lft forever 
  • 按照網(wǎng)絡(luò)接口開(kāi)啟和關(guān)閉狀態(tài)輸出

命令 ip link ls up 會(huì)輸出所有處于開(kāi)啟狀態(tài)的網(wǎng)絡(luò)接口信息

那么,ip link ls down就會(huì)輸出所有處于關(guān)閉狀態(tài)的網(wǎng)絡(luò)接口信息

為網(wǎng)絡(luò)接口 添加、移除 IP地址

  • 添加IP

為指定網(wǎng)絡(luò)接口分配IP地址的命令格式: ip a add ip地址 dev 接口名字

比如:現(xiàn)在要為eth0 網(wǎng)絡(luò)接口分配一個(gè)網(wǎng)絡(luò)掩碼為 20 的IP 192.168.1.10, 具體的輸入請(qǐng)看下面的實(shí)例

 

  1. [root@ecs-centos-7 ~]# ip a add 192.168.1.10/20  dev eth0 
  2. [root@ecs-centos-7 ~]# ip a show eth0 
  3. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  4.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  5.     inet 192.168.0.9/24 brd 192.168.0.255 scope global noprefixroute dynamic eth0 
  6.        valid_lft 71787sec preferred_lft 71787sec 
  7.     inet 192.168.1.10/20 scope global eth0 
  8.        valid_lft forever preferred_lft forever 
  9.     inet6 fe80::f816:3eff:fee0:4fb8/64 scope link  
  10.        valid_lft forever preferred_lft forever 

從上面例子的輸出結(jié)果可以看出,網(wǎng)絡(luò)接口eth0上多了一個(gè)192.168.1.10的 IP

命令 ip a add 192.168.1.10/20 dev eth0 執(zhí)行成功的話,是沒(méi)有任何輸出,如果網(wǎng)絡(luò)接口 eth0 不存在的話,會(huì)輸出 Cannot find device "eth0" 的錯(cuò)誤信息

其實(shí),還可以通過(guò)執(zhí)行 ping 192.168.1.10 命令來(lái)測(cè)試網(wǎng)絡(luò)接口上IP是否分配成功,如果能 ping 通IP的話,表示分配成功,否則表示失敗

說(shuō)明:192.168.1.10/20 中 20 是 CIDR 表示法的網(wǎng)絡(luò)掩碼,想詳細(xì)了解的可以自行查閱網(wǎng)絡(luò)掩碼的資料

  • 移除IP

網(wǎng)絡(luò)接口上添加了IP之后,可使用 ip a del ip地址 dev 接口名字 命令從指定的接口移除指定的IP,移除的時(shí)候IP后面需要攜帶網(wǎng)絡(luò)掩碼

 

  1. [root@ecs-centos-7 ~]# ip a del 192.168.1.10/20 dev eth0 
  2. [root@ecs-centos-7 ~]# ip a show eth0 
  3. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  4.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  5.     inet 192.168.0.9/24 brd 192.168.0.255 scope global noprefixroute dynamic eth0 
  6.        valid_lft 71414sec preferred_lft 71414sec 
  7.     inet6 fe80::f816:3eff:fee0:4fb8/64 scope link  
  8.        valid_lft forever preferred_lft forever 

修改網(wǎng)絡(luò)接口狀態(tài)

要關(guān)閉或者開(kāi)啟網(wǎng)絡(luò)接口,可以使用 ip link set dev 接口名字 up/down 命令

例如:有 lo 和 eth0 兩個(gè)網(wǎng)絡(luò)接口, 具體接口信息如下

 

  1. [root@ecs-centos-7 ~]# ip a 
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 
  3.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  4.     inet 127.0.0.1/8 scope host lo 
  5.        valid_lft forever preferred_lft forever 
  6.     inet6 ::1/128 scope host  
  7.        valid_lft forever preferred_lft forever 
  8. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  9.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  10.     inet 192.168.0.9/24 brd 192.168.0.255 scope global noprefixroute dynamic eth0 
  11.        valid_lft 59216sec preferred_lft 59216sec 
  12.     inet6 fe80::f816:3eff:fee0:4fb8/64 scope link  
  13.        valid_lft forever preferred_lft forever 

通過(guò) ping -w 3 127.0.0.1 命令測(cè)試,結(jié)果表明 lo 接口目前是開(kāi)啟狀態(tài),具體的測(cè)試輸出如下所示

 

  1. [root@ecs-centos-7 ~]# ping -w 3 127.0.0.1 
  2. PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. 
  3. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.014 ms 
  4. 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.026 ms 
  5. 64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.022 ms 
  6. 64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.023 ms 
  7.  
  8. --- 127.0.0.1 ping statistics --- 
  9. 4 packets transmitted, 4 received, 0% packet loss, time 2999ms 
  10. rtt min/avg/max/mdev = 0.014/0.021/0.026/0.005 ms 

現(xiàn)在關(guān)閉 lo 網(wǎng)絡(luò)接口,并再次測(cè)試該接口的狀態(tài),具體命令如下:

 

  1. [root@ecs-centos-7 ~]# ip link set dev lo down 
  2. [root@ecs-centos-7 ~]# ip link show lo 
  3. 1: lo: <LOOPBACK> mtu 65536 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000 
  4.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  5.  
  6. [root@ecs-centos-7 ~]# ping -w 3 127.0.0.1 
  7. PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. 
  8.  
  9. --- 127.0.0.1 ping statistics --- 
  10. 4 packets transmitted, 0 received, 100% packet loss, time 2999ms 

執(zhí)行 ip link set dev lo down 命令之后,關(guān)閉了網(wǎng)絡(luò)接口lo,通過(guò) ip link show lo 命令查看該接口的信息,結(jié)果表明接口是關(guān)閉狀態(tài),再次通過(guò) ping -w 3 127.0.0.1測(cè)試接口的狀態(tài),再一次確認(rèn)了接口是關(guān)閉狀態(tài)

修改網(wǎng)絡(luò)接口傳輸隊(duì)列長(zhǎng)度

通過(guò) p l set txqueuelen 長(zhǎng)度 dev 接口名字 命令可以設(shè)置網(wǎng)絡(luò)接口的傳輸隊(duì)列長(zhǎng)度

 

  1. [root@ecs-centos-7 ~]# ip l show eth0 
  2. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1200 
  3.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  4.      
  5. [root@ecs-centos-7 ~]# ip l set txqueuelen 1000 dev eth0 
  6. [root@ecs-centos-7 ~]# ip l show eth0 
  7. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 
  8.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 

上面的例子中,字符串 qlen 1200 表示傳輸隊(duì)列長(zhǎng)度是 1200

從例子中可以看出,修改傳輸隊(duì)列長(zhǎng)度之前,傳輸隊(duì)列長(zhǎng)度是 1200

執(zhí)行 ip l set txqueuelen 1000 dev eth0 命令把傳輸隊(duì)列長(zhǎng)隊(duì)修改為 1000, 然后再執(zhí)行 ip l show eth0 命令查詢(xún) eth0網(wǎng)絡(luò)接口的信息,查詢(xún)結(jié)果中 default qlen 1000 說(shuō)明修改成功

修改網(wǎng)絡(luò)接口的MTU(最大傳輸單元)

通過(guò) p l set mtu 長(zhǎng)度 dev 接口名字 命令可以設(shè)置網(wǎng)絡(luò)接口的最大傳輸單元

 

  1. [root@ecs-centos-7 ~]# ip l show eth0 
  2. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1600 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1200 
  3.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  4.  
  5.  
  6. [root@ecs-centos-7 ~]# ip l set set mtu 1500 dev eth0 
  7. [root@ecs-centos-7 ~]# ip l show eth0 
  8. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1200 
  9.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 

上面的例子中,字符串 mtu 1600 表示最大傳輸單元是 1600

從例子中可以看出,修改傳輸隊(duì)列長(zhǎng)度之前,最大傳輸單元是 1600

執(zhí)行 ip l set set mtu 1500 dev eth0 命令把最大傳輸單元修改為 1500, 然后再執(zhí)行 ip l show eth0 命令查詢(xún) eth0網(wǎng)絡(luò)接口的信息,查詢(xún)結(jié)果中 mtu 1500 說(shuō)明修改成功

查看IP路由表

下面幾條命令都可以查看 IP 路由表

 

  1. ip r 
  2. ip route 
  3. ip r list 
  4. ip route list 
  • 查看路由表

 

  1. [root@ecs-centos-7 ~]# ip r 
  2. default via 192.168.0.1 dev eth0 proto dhcp metric 100  
  3. 169.254.169.254 via 192.168.0.254 dev eth0 proto dhcp metric 100  
  4. 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.9 metric 100 
  • 查看指定IP以及網(wǎng)絡(luò)掩碼的路由表

 

  1. [root@ecs-centos-7 ~]# ip r list 192.168.0.0/24 
  2. 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.9 metric 100  

查看ARP緩存

ARP是 Address Resolution Protocol 的縮寫(xiě), 全稱(chēng)是地址解析協(xié)議,它是用于實(shí)現(xiàn)從IP地址到Mac地址的映射,也就是詢(xún)問(wèn)目標(biāo)IP的Mac地址

在本地存儲(chǔ)了一份IP對(duì)應(yīng)Mac地址的映射表,這張表叫做 ARP緩存表,可以使用 ip n 命令查看緩存表

 

  1. [root@ecs-centos-7 ~]# ip n 
  2. 192.168.0.1 dev eth0 lladdr fa:16:3e:64:38:a8 REACHABLE 
  3. 192.168.0.254 dev eth0 lladdr fa:fa:fa:fa:fa:01 STALE 

更改網(wǎng)卡Mac地址

大部分場(chǎng)景中是不需要修改Mac地址的,但有時(shí)你可能想隱藏真實(shí)的Mac地址(物理地址),這時(shí)可以修改Mac地址,修改Mac地址的命令如下

  1. ip link set dev 接口名 address 新的Mac地址 

下面以修改 lo 網(wǎng)絡(luò)接口的Mac地址為例來(lái)說(shuō)明

 

  1. [root@ecs-centos-7 ~]# ip l list lo 
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 
  3.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  4.  
  5. [root@ecs-centos-7 ~]# ip l set lo address fa:16:3e:e0:4f:b4 
  6. [root@ecs-centos-7 ~]# ip l list lo 
  7. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 
  8.     link/loopback fa:16:3e:e0:4f:b4 brd 00:00:00:00:00:00 

從上面的例子中可以看出,lo接口初始的Mac地址是 00:00:00:00:00:00

執(zhí)行 ip l set lo address fa:16:3e:e0:4f:b4 命令修改Mac地址,然后再執(zhí)行 ip l list lo 查看 lo接口的信息,輸出的結(jié)果信息表明Mac地址修改成功

注意:如果當(dāng)前網(wǎng)絡(luò)接口上執(zhí)行上面的命令,當(dāng)前會(huì)話會(huì)中斷,需要重啟機(jī)器才能恢復(fù),所以最好是在其他的網(wǎng)絡(luò)接口上測(cè)試

查看網(wǎng)絡(luò)統(tǒng)計(jì)信息

通過(guò) ip -s link 命令可以查看網(wǎng)絡(luò)接口上的一些統(tǒng)計(jì)數(shù)據(jù),比如接口上傳輸?shù)淖止?jié)數(shù)、報(bào)文數(shù),錯(cuò)誤或者丟棄的報(bào)文數(shù)等等

 

  1. [root@ecs-centos-7 ~]# ip -s link 
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 
  3.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  4.     RX: bytes  packets  errors  dropped overrun mcast    
  5.     272        2        0       0       0       0        
  6.     TX: bytes  packets  errors  dropped carrier collsns  
  7.     272        2        0       0       0       0        
  8. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 
  9.     link/ether fa:16:3e:e0:4f:b8 brd ff:ff:ff:ff:ff:ff 
  10.     RX: bytes  packets  errors  dropped overrun mcast    
  11.     47949      531      0       0       0       0        
  12.     TX: bytes  packets  errors  dropped carrier collsns  
  13.     50816      492      0       0       0       0        
  14. [root@ecs-centos-7 ~]# 

想查看更詳細(xì)的信息可以使用 ip -s -s link 命令, 這個(gè)在排除網(wǎng)絡(luò)故障時(shí)經(jīng)常用到

小結(jié)

本文介紹了ip命令的常見(jiàn)用法,更多的用法請(qǐng)使用 man ip命令查看

 

責(zé)任編輯:武曉燕 來(lái)源: Linux開(kāi)發(fā)那些事兒
相關(guān)推薦

2021-08-02 13:38:21

Linuxalias命令

2018-01-08 15:30:18

Linux命令date

2023-01-31 17:36:22

IPLinux網(wǎng)絡(luò)

2022-10-14 19:30:29

Linux

2021-09-13 08:05:20

Linux Sipcalc 子網(wǎng)

2010-01-04 10:10:00

2021-04-06 09:46:15

Linuxanacron命令系統(tǒng)運(yùn)維

2018-01-15 13:20:26

Linux命令IP

2022-10-14 12:07:04

LinuxIP

2009-08-03 10:12:37

find命令詳解find命令linux

2022-03-25 14:53:32

Linuxvmstat 命令

2014-05-12 16:40:13

Linux命令快照

2012-05-11 10:10:47

Linuxgrep

2022-10-20 16:51:44

Linux命令行IP 地址

2019-07-29 10:56:32

Linuxuseradd命令創(chuàng)建用戶(hù)賬號(hào)

2009-08-16 20:11:50

linux中talk命talk命令參數(shù)linux命令行參數(shù)

2022-02-08 12:19:36

LinuxJQ命令

2021-05-31 11:30:43

Linuxsource命令

2022-10-25 09:07:28

Linuxxargs命令

2020-08-24 12:37:54

Linuxxargs命令
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)