Linux的TCP/IP 网络工具

2018-12-28  本文已影响9人  LeaveStyle

Linux上查看主机的IP地址命令是啥?ifconfig,如果只知道这个话面试时就完蛋了,说明只会Linux简单的命令,而且是慢慢要过时的命令。首先要了解Linux的TCP/IP的两大网络工具:net-tools和iproute2.

net-tools和iproute2历史

如今很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具(统称为net-tools)来配置网络功能,解决网络故障。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仍处在持续开发中。

如果你仍在使用net-tools,而且尤其需要跟上新版Linux内核中的最新最重要的网络特性的话,那么是时候转到iproute2的阵营了。原因就在于使用iproute2可以做很多net-tools无法做到的事情。

当然这两个工具在大部分Linux系统中自带的,下面通过iproute2的 ip addr show 指令看看返回了哪些内容。

ip addr show

root@test:~# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    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 group default qlen 1000
    link/ether 0a:35:3e:c7:79:60 brd ff:ff:ff:ff:ff:ff
    inet 192.168.17.128/24 brd 192.168.17.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::e21b:33b0:68b2:6f05/64 scope link
       valid_lft forever preferred_lft forever

net-tools和iproute2的命令对比

图片源自于百度
上一篇 下一篇

猜你喜欢

热点阅读