1.ifconfig:配置或顯示網絡接口信息
該命令用於配置網卡IP地址等網絡參數或顯示當前網絡的接口狀態,該命令配置網卡信息時必須要以root用戶的身份來執行。
參數選項 | 說明 |
up | 激活指定的網絡接口 |
down | 關閉指定的網絡接口 |
示例:
1)顯示當前系統開啟的所有網絡接口信息
[root@boxiaoyuan ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:DF:9A:A3 inet addr:192.168.13.129 Bcast:192.168.13.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fedf:9aa3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:29610 errors:0 dropped:0 overruns:0 frame:0 TX packets:13476 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:28140275 (26.8 MiB) TX bytes:1079738 (1.0 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:2862 errors:0 dropped:0 overruns:0 frame:0 TX packets:2862 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:971569 (948.7 KiB) TX bytes:971569 (948.7 KiB)
說明:eth0表示第一塊網卡,lo表示回環接口。
以eth0為例對每一行進行說明:
第一行:連接類型為Ethernet(以太網),HWaddr為硬件的mac地址。
第二行:網卡的IP地址,廣播地址,子網掩碼
第三行:IPv6地址配置信息
第四行:UP表示網卡為開啟狀態,RUNNING表示網卡上的網線為連接狀態,MULTICAST表示支持組播, MTU:1500表示最大傳輸單元為1500字節。
第五、六行:表示網卡接收,發送數據包的統計信息。
第八行:表示網卡接收,發送數據字節數的統計信息。
2.ifup:激活網絡接口
該命令用於激活指定的網絡接口。
示例:
1)激活指定網絡接口
Last login: Fri Apr 12 22:06:05 2019 from 192.168.13.1 [root@inspur ~]# ifup eth0 活躍連接狀態:激活中 活躍連接路徑:/org/freedesktop/NetworkManager/ActiveConnection/4 狀態:激活的 連接被激活
3.ifdown:禁用網絡接口
該命令用於進行指定的網絡接口。
示例:
1)禁用指定網絡接口
[root@inspur 桌面]# ifdown eth0
4.ip:網絡配置工具
該命令是iproute軟件包中的一個強大的網絡配置工具,用於顯示或管理Linux系統的路由,網絡設備,策略路由和隧道。
語法格式:
ip [option] [object] [command] ip 選項 網絡對象 操作命令
參數 | 說明 |
-s | 輸出更詳細的信息,為了顯示更詳細的信息,可以重復使用此選項 |
-r | 顯示主機時,不使用ip地址,而是主機的域名 |
網絡對象 | 指定要管理的網絡對象,支持的網絡對象如下: link:網絡設備 address:設備的協議地址(IP地址) |
help | ip help:查看ip命令的幫助 ip [object] help:查看指定的網絡對象的幫助 |
操作命令 | 對指定的網絡對象完成具體的操作,不同的操作對象支持的操作命令不相同,下面給出網絡對象支持的常見操作命令: link對象支持的操作命令:set(修改設備屬性),show(顯示設備屬性) address對象支持的操作命令:add(添加IP地址),del(刪除IP地址),flush(清除協議地址),show(查看IP地址) |
示例:
1)顯示網絡設備屬性
[root@boxiaoyuan ~]# ip link show dev eth0 # 顯示eth0網卡屬性 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan ~]# ip -s link show dev eth0 # 顯示eth0網卡詳細屬性 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 57930 651 0 0 0 0 TX: bytes packets errors dropped carrier collsns 40879 324 0 0 0 0 [root@boxiaoyaun ~]# ip -s -s link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 62130 685 0 0 0 0 RX errors: length crc frame fifo missed 0 0 0 0 0 TX: bytes packets errors dropped carrier collsns 45045 349 0 0 0 0 TX errors: aborted fifo window heartbeat 0 0 0 0
2)關閉和激活網絡設備
[root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan 桌面]# ip link set dev eth0 down [root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan 桌面]# ip link set dev eth0 up [root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff
3)修改網卡MAC地址
[root@boxiaoyuan ~]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan ~]# ip link set dev eth0 address 00:0c:29:df:9a:11 [root@bixiaoyuan ~]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff
4)查看網卡信息
[root@boxiaoyuan ~]# ip address 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever
5)添加或刪除IP地址
[root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address add 192.168.13.122/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet 192.168.13.122/24 scope global secondary eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address del 192.168.13.132/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address add 192.168.13.144/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.144/24 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever
說明:刪除網卡的主IP地址,同時會刪除該網卡的所有IP地址;刪除網卡的輔助IP地址,不會影響該網卡的其他IP地址。
5.netstat:查看網絡狀態
該命令可以顯示本機網絡的連接狀態,運行端口和路由表等信息。
參數 | 說明 |
-n(常用) | 顯示數字形式的地址而不是去解析主機,端口號或用戶名,默認情況下會去解析主機的主機名 |
-a(常用) | 顯示處於監聽狀態和非監聽狀態的socket信息 |
-c(常用) | 后面跟的秒數表示每隔幾秒就刷新顯示一次 |
-l(常用) | 僅顯示連接狀態為listen的服務的網絡狀態 |
-t(常用) | 顯示所有的TCP連接情況 |
-u(常用) | 顯示所有的UDP連接情況 |
-p(常用) | 顯示socket所屬進程的PID和名稱 |
示例:
1)常用選項組合(一)
[root@boxiaoyuan 桌面]# netstat -an # 常用組合-a和-n,顯示所有的鏈接信息
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:60072 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:83 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
說明:Proto:socket使用的協議(tcp,udp);Recv-Q:接收到但是還沒有處理的字節數;Send-Q:已經發送但是未被遠程主機確認的字節數;Local Address:本地主機地址和端口;Foreign Address:遠程主機的地址和端口;State:socket的狀態,通常僅有TCP的狀態。
2)常用選項組合(二)
[root@boxiaoyuan ~]# netstat -ntulp # 顯示所有TCP和UDP正在監聽的連接信息 Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:60072 0.0.0.0:* LISTEN 2275/rpc.statd tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2778/mysqld
6.ss:查看網絡狀態
該命令類似並將取代netstat命令,它能用來查看網絡狀態,包括TCP,UDP連接,端口等,它比netstat更高效,如果該命令沒有安裝,可以使用yum install iproute -y命令進行安裝。
參數 | 說明 |
-n | 顯示IP地址,不進行DNS解析 |
-a | 顯示所有socket連接 |
-l | 顯示所有監聽socket |
-p | 顯示使用socket的進程 |
-t | 僅顯示TCP的socket |
-u | 僅顯示UDT的socket |
示例:
1)常用選項組合(一)
[root@boxiaoyuan ~]# ss -an # 顯示所有的socket連接 State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:60072 *:* LISTEN 0 50 *:3306 *:* LISTEN 0 128 :::36842 :::*
使用column進行格式化
[root@boxiaoyuan ~]# ss -an | column -t State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:60072 *:* LISTEN 0 50 *:3306 *:* LISTEN 0 128 :::36842 :::*
2)常用選項組合(二)
[root@boxiaoyuan ~]# ss -ntulp | column -t # 顯示所有正在監聽的TCP和UDP連接 Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 *:111 *:* users:(("rpcbind",2208,6)) udp UNCONN 0 0 127.0.0.1:755 *:* users:(("rpc.statd",2275,5)) udp UNCONN 0 0 *:631 *:* users:(("cupsd",2318,9))
7.ping:測試主機之間網絡的連通性
該命令用於測試主機之間網絡的連通性。
參數 | 說明 |
-c 次數 | 指定發送的ICMP報文的次數 |
-i 時間間隔 | 相鄰兩次發送報文的時間間隔,默認為1s |
示例:
1)測試到目標主機的網絡連通性
[root@boxiaoyuan ~]# ping www.baidu.com PING www.a.shifen.com (61.135.169.121) 56(84) bytes of data. 64 bytes from 61.135.169.121: icmp_seq=1 ttl=128 time=20.9 ms 64 bytes from 61.135.169.121: icmp_seq=2 ttl=128 time=20.5 ms 64 bytes from 61.135.169.121: icmp_seq=3 ttl=128 time=17.4 ms 64 bytes from 61.135.169.121: icmp_seq=4 ttl=128 time=19.1 ms ^C --- www.a.shifen.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3737ms rtt min/avg/max/mdev = 17.445/19.522/20.994/1.378 ms
注:本文內容為《跟老男孩學linux運維 核心系統命令實踐》的學習筆記。