Linux ip命令常用操作

ip 命令来自 iproute2 软件包,在 CentOS 7 中默认已安装(yum install -y iproute)。

iproute2 软件包提供了很多命令(rpm -ql iproute |grep bin),如 ss 命令、bridge,这些命令可以完全替代 ifconfig、netstat、route 等命令。

|----------------------|-------------------------------------------------------------------------------------------------|
| 显示设备属性 | ip link show ip link show eth0 |
| 查看网络接口统计信息 | ip -s link show ip -s link show eth0 |
| 显示某个网卡信息 | ip addr show eth0 |
| 查看arp 缓存信息表 | ip r ip route |
| 配置网络接口(网卡)up | down | ip link set <dev> up | down |
| 配置网卡临时IP | ip addr add 192.168.1.1/24 dev eth0 |
| 配置网卡临时IP并指定广播地址 | ip addr add 192.168.1.1/24 brd + dev eth0 ip addr add 192.168.1.1/24 brd 192.168.1.255 dev eth0 |
| 删除网卡临时IP | ip addr del 192.168.1.1/24 dev eth0 |
| 查找并修改接口名 | ip link set <dev> name <new_name> |
| 修改MAC地址 | ip link set <dev> address <new_mac> |
| 查看ip跟MAC地址的映射关系 | ip neigh |
| 添加VLAN接口 | ip link add link <parent-dev> name <vlan-dev> type vlan id <vlan-id> |
| 删除VLAN接口 | ip link delete <vlan-dev> |

ip link show | grep DOWN

显示state 为Down的网卡设备,state为DOWN说明链路不同,即便连线正常,对方关机也会显示为down,同时会有NO-CARRIER的显示

ip neigh

查看ip跟MAC地址的映射关系,如果有dhcp的client,也会将对方的ip跟MAC同时显示,最后一条显示的就是dhcp client端的设备获取的IP地址以及对应的Mac地址

10.80.10.33 dev em2 lladdr 4c:d9:17:97:3a:6c STALE

10.80.10.1 dev em2 lladdr 40:77:a9:77:68:45 DELAY

192.168.1.10 dev eth2.3 lladdr 00:bb:aa:33:55:35 REACHABLE

添加/删除VLAN接口示例

添加vlan接口

ip link add link p3p1 name p3p1.2 type vlan id 2

为接口设置IP地址以及广播地址

ip addr add 192.168.3.100/24 brd + dev p3p1.2

启动接口

ip link set p3p1.2 up

ip link add link p3p1 name p3p1.2 type vlan id 2

ip addr add 192.168.3.100/24 brd + dev p3p1.2

ip link set p3p1.2 up

linux系统中所有的网络设备信息都存在了/sys/class/net这个目录,查看相关网络设备参数都可以在该目录下查看:

查看Mac地址

bash 复制代码
cat /sys/class/net/p3p1/address

查看网络接口状态

bash 复制代码
cat /sys/class/net/p3p1/operstate
相关推荐
深度Linux3 小时前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术
m0_465215794 小时前
TCP & UDP Service Model
服务器·网络·tcp/ip
chian-ocean7 小时前
从理论到实践:Linux 进程替换与 exec 系列函数
linux·运维·服务器
拎得清n7 小时前
UDP编程
linux
敖行客 Allthinker7 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
夏尔Gaesar9 小时前
Vim安装与配置教程(解决软件包Vim没有安装可候选)
linux·编辑器·vim
hunter2062069 小时前
如何监控ubuntu系统某个程序的运行状态,如果程序出现异常,对其自动重启。
linux·chrome·ubuntu
norsd10 小时前
MongoDb user自定义 role 添加 action(collStats, EstimateDocumentCount)
服务器·数据库·mongodb
慕雪华年10 小时前
【Linux】opencv在arm64上提示找不到libjasper-dev
linux·运维·opencv
_Eden_10 小时前
Keepalived高可用集群企业应用实例一
运维·服务器