用于查看和配置网络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命令已被淘汰,你知道下一代的命令吗

Linux网络管理工具:ifconfig,从入门到精通!

[网络配置相关]——ifconfig命令ip命令route命令

Linux网络管理及命令详解

Kali Linux该怎么进行网络配置

如何查看linux网口配置