用于查看和配置网络ifconfig命令已被淘汰,你知道下一代的命令吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用于查看和配置网络ifconfig命令已被淘汰,你知道下一代的命令吗相关的知识,希望对你有一定的参考价值。
参考技术A
前言
本文主要介绍net-tools套件与iproute2套件的区别。
net-tools套件与iproute2套件的区别
ifconfig、route、arp和netstat等命令行工具都是net-toos套件的工具集,用于解决网络故障。net-tools起源于BSD的TCP/IP工具箱,后来成为老版本Linux内核中配置网络功能的工具。但自2001年起,Linux社区已经对其停止维护。同时,一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools,只支持iproute2。
iproute2的出现旨在从功能上取代net-tools。net-tools通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置,而iproute2则通过netlink套接字接口与内核通讯。抛开性能而言,iproute2的用户接口比net-tools显得更加直观。比如,各种网络资源(如link、IP地址、路由和隧道等)均使用合适的对象抽象去定义,使得用户可使用一致的语法去管理不同的对象。到目前为止,iproute2仍处在持续开发中。
笔者强烈建议用户应该使用iproute2取代传统的net-tools套件,因为iproute2可以做很多net-tools无法做到的事情。
两者常见命令对比
net-toolsiproute2命令作用 arp -naip neigh查看MAC地址表ifconfigip link查看网卡基本信息ifconfig -aip addr show查看网站详细信息ifconfig --helpip help查看帮助信息ifconfig -sip -s link查看网卡流量传输信息ifconfig eth0 upip link set eth0 up启用网卡ipmaddrip maddr查看网卡相关的MAC地址表iptunnelip tunnel查看隧道信息netstatss查看端口使用情况netstat -iip -s link查看每张网卡的信息及传输信息netstat -gip maddr查看张网卡的二层及三层邻居信息netstat -lss -l查看本机的监听端口netstat -rip route查看本机路由表route addip route add添加静态路由route delip route del删除静态路由route -nip route show查看本机路由表vconfigip link查看本地连接情况
Linux查看MAC地址表
? (172.16.87.174) 位于 00:0c:29:2a:8e:23 [ether] 在 vmnet8
? (172.16.87.170) 位于 在 vmnet8
? (172.16.87.179) 位于 00:0c:29:2a:8e:23 [ether] 在 vmnet8
? (192.168.42.129) 位于 da:1a:b5:a1:93:bc [ether] 在 enp0s20u1
查看网卡基本信息
查看网卡基本信息
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s25: mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 3c:97:0e:43:e8:bd brd ff:ff:ff:ff:ff:ff
3: wlp3s0: mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
link/ether 60:67:20:c7:be:00 brd ff:ff:ff:ff:ff:ff
4: vmnet1: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 00:50:56:c0:00:01 brd ff:ff:ff:ff:ff:ff
5: vmnet8: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 00:50:56:c0:00:08 brd ff:ff:ff:ff:ff:ff
12: enp0s20u1: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether c6:34:99:3e:12:f9 brd ff:ff:ff:ff:ff:ff
Linux 查看ip 命令帮助信息
Usage: ip [ OPTIONS ] OBJECT COMMAND | help
ip [ -force ] -batch filename
where OBJECT := link | address | addrlabel | route | rule | neigh | ntable |
tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
netns | l2tp | fou | macsec | tcp_metrics | token | netconf | ila |
vrf | sr
OPTIONS := -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
-h[uman-readable] | -iec |
-f[amily] inet | inet6 | ipx | dnet | mpls | bridge | link |
-4 | -6 | -I | -D | -B | -0 |
-l[oops] maximum-addr-flush-attempts | -br[ief] |
-o[neline] | -t[imestamp] | -ts[hort] | -b[atch][filename] |
-rc[vbuf][size] | -n[etns] name | -a[ll] | -c[olor]
Linux查看网卡流量传输信息
Linux查看网卡流量传输信息
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
300977974 305919 0 0 0 0
TX: bytes packets errors dropped carrier collsns
300977974 305919 0 0 0 0
2: eth0: mtu 1400 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether fa:16:3e:48:b5:08 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
107994934 965313 0 0 0 0
TX: bytes packets errors dropped carrier collsns
714725526 808580 0 0 0 0
https://www.linuxrumen.com/rmxx/804.html
[网络配置相关]——ifconfig命令ip命令route命令
ifconfig命令
1. 查看已被激活的网卡的详细信息
# ifconfig eth0 Link encap:Ethernet HWaddr 00:30:67:F2:10:CF inet addr:10.0.0.253 Bcast:10.0.255.255 Mask:255.255.0.0 inet6 addr: fe80::230:67ff:fef2:10cf/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4663517 errors:0 dropped:0 overruns:0 frame:0 TX packets:6122850 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1852734274 (1.7 GiB) TX bytes:1487018040 (1.3 GiB)
HWaddr :网卡的硬件地址,即MAC地址
inet addr:IPv4的IP 地址
Bcast:广播地址
mask:子网掩码
inet6 addr:IPv6地址
MTU:最大传输单元
Metric:用于计算路由的成本
RX:表示网络启动到现在的封包接受情况 (Receive)
packets:表示接包数
errors:表示接包发生错误的数量
dropped:表示丢弃的包数量
overruns:表示接收时因过速而丢失的数据包数
frame:表示发生frame错误而丢失的数据包数
TX:从网络启动到现在传送的情况 (Transmit)
collisions:冲突信息包的数目
txqueuelen:发送队列的大小
RX byte、TX byte:总传送/接受的量
注:由RX和TX可以了解网络是否非常繁忙
注:errors:0 dropped:0 overruns:0 frame:0,都为0 说明网络比较稳定
注:collisions发生太多次表示网络状况不太好
2. 临时IP配置
# ifconfig eth0 172.16.0.118 netmask 255.255.0.0 # ifconfig eth0 172.16.0.118/16 # ifconfig eth0:1 172.16.0.119/16 指定子接口
3. 配置临时MAC地址(配置文件中的mac地址不可直接改,要不就不写)
# ifconfig eth0 hw ether B8:97:5A:00:4E:3A
4. 简单的启动和关闭网络接口
# ifdown eth0 ; ifup eth0
5. 关闭临时的网络接口
# ifconfig eth0:1 down
6. 启用和关闭arp协议
# ifconfig eth0 arp # ifconfig eth0 -arp
7. 设置传输单元mtu的值
# ifconfig eth0 mtu 1000
ip命令
1. 关于额外IP的相关设定:ip add 临时增加/删除IP地址
# ip add add 192.168.1.126/24 dev eth0:0 # ip add del 192.168.1.126/24 dev eth0:0 # ip add show # ip add show eth0
2. 关于接口设备的相关设置:ip link
# ip link set eth0 up //开启网卡 # ip link set eth0 down //关闭网卡 # ip link set eth0 name lyj //网卡改名 # ip link set eth0 mtu 1000 //改mtu值
# ip link show //显示所有接口信息 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 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:d6:81:26 brd ff:ff:ff:ff:ff:ff # ip -s link show eth0 //显示接口流量信息 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:d6:81:26 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 107193541 1118624 0 0 0 0 TX: bytes packets errors dropped carrier collsns 116799818 1093559 0 0 0 0 # ip -s -s link show eth0 //多一个-s表示更详细的信息 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:d6:81:26 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 107031087 1116940 0 0 0 0 RX errors: length crc frame fifo missed 0 0 0 0 0 TX: bytes packets errors dropped carrier collsns 116526036 1091941 0 0 0 0 TX errors: aborted fifo window heartbeat 0 0 0 0
3. 关于路由的相关设置:ip route
# ip route show //查看路由信息 10.0.0.0/16 dev eth0 proto kernel scope link src 10.0.10.158 169.254.0.0/16 dev eth0 scope link metric 1002 default via 10.0.0.254 dev eth0 # ip route add 10.10.10.0/24 via 172.16.0.254 dev eth0 //添加一条路由 # ip route del 10.10.10.0/24 //删除一条路由 # ip route add default via 172.16.0.254 dev eth0 //添加默认路由 # ip route del default via 172.16.0.254 dev eth0 //删除默认路由
4. 其他
# ip monitor all //所在局域网的一台电脑根据它的状态可以被分类成REACHABLE或者STALE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff STALE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff REACHABLE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff STALE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff REACHABLE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff STALE [NEIGH]10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff REACHABLE # ip neighbour //查看接入你所在的局域网的设备的MAC地址 10.104.64.1 dev eth0 lladdr fe:ee:ff:ff:ff:ff REACHABLE
route命令
1. 查看路由状态
# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.104.64.0 0.0.0.0 255.255.192.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0 0.0.0.0 10.104.64.1 0.0.0.0 UG 0 0 0 eth0
Destination:目的地
Genmask:路由的网络掩码
Gateway:该网络通过哪个网关连接出去的(下一跳)
0.0.0.0:表示路由直接由本机传送,即局域网的MAC直接发送的
IP:表示该路由需要路由器(网关)的转发才能发送
Flags:标志
U Up表示此路由当前为启动状态
H Host,表示此网关为一主机
G Gateway,表示此网关为一路由器
R Reinstate Route,使用动态路由重新初始化的路由
D Dynamically,此路由是动态性地写入
M Modified,此路由是由路由守护程序或导向器动态修改
! 表示此路由当前为关闭状态
Iface:这个路由传递数据包的接口
2.增删/设置路由
# route add -net 172.16.0.0/16 netmask 255.255.0.0 gw 172.16.0.254 dev eth0 //增加一条路由 -net后面接的路由为一个网络 # route del -net 172.16.0.0/16 netmask 255.255.0.0 gw 172.16.0.254 dev eth0 //删除一条路由 # route add -host 172.16.10.10 gw 192.168.1.1 //-host连接到单部主机的路由 # route add default gw 192.168.1.1 //增加默认路由 gw指定下一跳 # route del default gw 192.168.1.1
以上是关于用于查看和配置网络ifconfig命令已被淘汰,你知道下一代的命令吗的主要内容,如果未能解决你的问题,请参考以下文章
用于查看和配置网络ifconfig命令已被淘汰,你知道下一代的命令吗