Shell指令碼 – 檢視網路介面資訊

夢共裡醉發表於2021-11-05
本文介紹如何是用 檢視網路介面的ip地址、MAC地址、網路速率等資訊。
系統環境

7

1)檢查可用的網路介面

使用 ipawk ,過濾出狀態為UP的網路介面。

[root@localhost ~]# ip ad|awk '/state UP/ {print $2}'
ens33:
ens38:

Shell指令碼 – 檢視網路介面資訊Shell指令碼 – 檢視網路介面資訊

2)檢視網路介面的IP地址

使用下面 過濾出每個介面的ip地址:

[root@localhost ~]# ip -o addr |awk '/inet/{print $2,$4}'
lo 127.0.0.1/8
lo ::1/128
ens33 192.168.43.138/24
ens33 fe80::214e:53b4:43f6:5495/64
ens38 172.25.254.130/24
ens38 fe80::c2ff:9dbc:76be:6dd9/64
或者只檢視IPv4地址:
[root@localhost ~]# ip addr | grep inet|grep -v 'inet6'|awk '{print $NF, $2}'
lo 127.0.0.1/8
ens33 192.168.43.138/24
ens38 172.25.254.130/24

Shell指令碼 – 檢視網路介面資訊Shell指令碼 – 檢視網路介面資訊

3)檢視網路卡的MAC地址

如果只想檢視網路介面名稱和相應的MAC地址,請使用以下命令。檢查特定的網路介面的MAC地址:

[root@localhost ~]# ip link show ens33 | awk '/link/{print $2}'
00:0c:29:99:ee:d9

檢視所有網路介面的MAC地址,可以寫一個 來實現:

[root@localhost ~]# cat mac-address.sh 
#!/bin/bash
ip addr |awk '/state UP/{print $2}' | sed 's/://' | while read output
do
echo $output:
ethtool -P $output
done

檢視一下執行結果:
Shell指令碼 – 檢視網路介面資訊Shell指令碼 – 檢視網路介面資訊

4)檢視網路介面的速度

如果要在 上檢查網路介面埠速度,可以使用ethtool工具。下面是檢視特定網路介面的速度:
[root@localhost ~]# ethtool ens33|grep "Speed:"
Speed: 1000Mb/s

news.yesky.com/hotnews/311/109240311.shtml

檢視所有介面的網路速度,可以寫一個指令碼來實現:

[root@localhost ~]# cat port-speed.sh 
#!/bin/bash
ip addr |awk '/state UP/{print $2}' | sed 's/://' | while read output
do
echo $output:
ethtool $output |grep "Speed:"
done

檢視一下執行結果:
Shell指令碼 – 檢視網路介面資訊Shell指令碼 – 檢視網路介面資訊

5)檢視網路介面資訊的Shell指令碼

下面這個指令碼,我們來實現檢視主機名、IPv4、IPv6、MAC地址、網路介面速度資訊:

[root@localhost ~]# cat nic-info.sh 
#!/bin/bash
hostname
echo "-------------"
for iname in $(ip addr |awk '/state UP/{print $2}')
do
echo "$iname"
ip addr show $iname | grep inet | awk '{printf "%s:\t%s\n",$1,$2}'
ip link show $iname | grep link | awk '{printf "MAC:\t%s\n",$2}'
ethtool ens33 | awk '/Speed/{printf "%s\t%s\n",$1,$2}'
done

Shell指令碼 – 檢視網路介面資訊Shell指令碼 – 檢視網路介面資訊

總結

本文介紹瞭如何是用shell指令碼檢視網路介面的ip地址、MAC地址、網路速率等資訊。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31524109/viewspace-2840709/,如需轉載,請註明出處,否則將追究法律責任。

相關文章