这篇文章主要介绍“在Linux上怎么检查网卡信息”,在日常操作中,相信很多人在在Linux上怎么检查网卡信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”在Linux上怎么检查网卡信息”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
默认情况下,在设置服务器时你会配置主网络接口。这是每个人所做的构建工作的一部分。有时出于各种原因,你可能需要配置额外的网络接口。
这可以是通过网络绑定/协作来提供高可用性,也可以是用于应用需求或备份的单独接口。
为此,你需要知道计算机有多少接口以及它们的速度来配置它们。
有许多命令可检查可用的网络接口,但是我们仅使用 ip
命令。以后,我们会另外写一篇文章来全部介绍这些工具。
在本教程中,我们将向你显示可用网络网卡(NIC)信息,例如接口名称、关联的 IP 地址、MAC 地址和接口速度。
ip 命令 类似于 ifconfig
, 用于分配静态 IP 地址、路由和默认网关等。
# ip a 1: lo: 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 forever2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether fa:16:3e:a0:7d:5a brd ff:ff:ff:ff:ff:ff inet 192.168.1.101/24 brd 192.168.1.101 scope global eth0 inet6 fe80::f816:3eff:fea0:7d5a/64 scope link valid_lft forever preferred_lft forever
ethtool
用于查询或控制网络驱动或硬件设置。
# ethtool eth0
在不带任何参数的情况下运行 ip
命令时,它会提供大量信息,但是,如果仅需要可用的网络接口,请使用以下定制的 ip
命令。
# ip a |awk '/state UP/{print $2}' eth0:eth2:
如果只想查看 IP 地址分配给了哪个接口,请使用以下定制的 ip
命令。
# ip -o a show | cut -d ' ' -f 2,7或ip a |grep -i inet | awk '{print $7, $2}' lo 127.0.0.1/8192.168.1.101/24192.168.1.102/24
如果只想查看网络接口名称和相应的 MAC 地址,请使用以下格式。
检查特定的网络接口的 MAC 地址:
# ip link show dev eth0 |awk '/link/{print $2}'00:00:00:55:43:5c
检查所有网络接口的 MAC 地址,创建该脚本:
# vi /opt/scripts/mac-addresses.sh #!/bin/ship a |awk '/state UP/{print $2}' | sed 's/://' | while read output;do echo $output: ethtool -P $outputdone
运行该脚本获取多个网络接口的 MAC 地址:
# sh /opt/scripts/mac-addresses.sh eth0:Permanent address: 00:00:00:55:43:5ceth2:Permanent address: 00:00:00:55:43:5d
如果要在 Linux 上检查网络接口速度,请使用 ethtool
命令。
检查特定网络接口的速度:
# ethtool eth0 |grep "Speed:" Speed: 10000Mb/s
检查所有网络接口速度,创建该脚本:
# vi /opt/scripts/port-speed.sh #!/bin/ship a |awk '/state UP/{print $2}' | sed 's/://' | while read output;do echo $output: ethtool $output |grep "Speed:"done
运行该脚本获取多个网络接口速度:
# sh /opt/scripts/port-speed.sh eth0:Speed: 10000Mb/seth2:Speed: 10000Mb/s
通过此 shell 脚本你可以收集上述所有信息,例如网络接口名称、网络接口的 IP 地址,网络接口的 MAC 地址以及网络接口的速度。创建该脚本:
# vi /opt/scripts/nic-info.sh #!/bin/shhostnameecho "-------------"for iname in $(ip a |awk '/state UP/{print $2}')do echo "$iname" ip a | grep -A2 $iname | awk '/inet/{print $2}' ip a | grep -A2 $iname | awk '/link/{print $2}' ethtool $iname |grep "Speed:"done
运行该脚本检查网卡信息:
# sh /opt/scripts/nic-info.sh vps.2daygeek.com----------------eth0:192.168.1.101/2400:00:00:55:43:5cSpeed: 10000Mb/seth2:192.168.1.102/2400:00:00:55:43:5dSpeed: 10000Mb/s
到此,关于“在Linux上怎么检查网卡信息”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。