华子目录
1.ip命令是什么
ip
命令是一个非常强大的命令行工具,用于管理与配置网络接口和路由表
1.1ip命令的由来
ip命令
是从早起的Unix系统
中的ifconfig命令
发展而来的。ifconfig命令
可以用于配置和管理网络接口,但是他的功能有限
,不能管理路由器
,因此ip命令
应运而生。随着网络技术的不断发展,ip命令
也不断进行更新和扩展,成为了一个功能强大的网络工具
。现在,在许多Linux和Unix系统
中,ip命令
已经取代了ifconfig命令
,成为管理网络接口和路由表的主要工具
。
1.2ip命令的安装包
ip命令
来自iproute软件包
[root@server ~]# yum whatprovides ip iproute-6.0.0-2.el9.x86_64 : Advanced IP routing and network device configuration tools 仓库 :base 匹配来源: 文件名 :/usr/sbin/ip 提供 : /sbin/ip
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
1.2ip选项
(基本不用)
-V
:显示指令版本信息
-s
:输出更详细的信息
-f
:强制使用指定的协议簇
-4
:指定使用的网络层协议是ipv4协议
-6
:指定使用的网络层协议是ipv6协议
-0
:输出信息每条记录输出一行
,即使内容较多也不换行显示
-r
:显示主机时,不使用ip地址
,而使用主机的域名
2.查看网络信息
2.1显示全部网络接口信息
ip address show
[root@server ~]# ip address show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 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: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0 inet 192.168.54.131/24 brd 192.168.54.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet 172.25.254.130/24 scope global ens160 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe9e:1d25/64 scope link noprefixroute valid_lft forever preferred_lft forever
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
2.2显示单个网络接口信息
ip address show ens160
[root@server ~]# ip address show ens160 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0 inet 192.168.54.131/24 brd 192.168.54.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet 172.25.254.130/24 scope global ens160 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe9e:1d25/64 scope link noprefixroute valid_lft forever preferred_lft forever
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
2.3显示单个接口状态
ip link show ens160
[root@server ~]# nmcli networking disabled [root@server ~]# ip link show ens160 2: ens160: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
[root@server ~]# nmcli networking enabled [root@server ~]# ip link show ens160 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
2.4查看路由表
ip route show
[root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.130 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100
AI生成项目 bash
- 1
- 2
- 3
- 4
2.5查看arp缓存
ip neighbour show
[root@server ~]# ip neighbour show 172.25.254.1 dev ens160 lladdr 00:50:56:c0:00:08 REACHABLE
AI生成项目 bash
- 1
- 2
3.设置网卡ip地址
3.1启用或停用网卡
- 启动接口为
ens160
的网卡
[root@server ~]# ip link set ens160 up
AI生成项目 bash
- 1
- 关闭接口为
ens160
的网卡
[root@server ~]# ip link set ens160 down
AI生成项目 bash
- 1
3.2设置默认网关
<gateway_ip>
为网关地址,<interface>
为网络接口
[root@server ~]# ip route add default via <gateway_ip> dev <interface>
AI生成项目 bash
- 1
3.3新增网卡地址
- 注意新增的
IP地址
是临时生效
(重启无效
),要长久生效
,修改网卡配置
文件或者使用nmcli命令
- 给
ens160
网卡,新增ip地址
[root@server ~]# ip address add 192.168.1.100/24 dev ens160
AI生成项目 bash
- 1
3.4删除ip地址
[root@server ~]# ip address del 192.168.1.100/24 dev ens160
AI生成项目 bash
- 1
- 发现已经没有
192.268.1.100/24
这个ip地址
了
3.5删除默认网关
[root@server ~]# ip route del default
AI生成项目 bash
- 1
4.管理路由表
4.1新增路由表
[root@server ~]# ip route add 192.168.80.0/24 via 172.25.254.2
AI生成项目 bash
- 1
- 注意:此时的
网关地址
必须在主机
中真实存在
,否则添加失败
- 如果主机中有多个网卡,添加路由时指定网卡
[root@server ~]# ip route add 192.168.70.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
4.2查看路由表
[root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.10 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100 192.168.70.0/24 via 172.25.254.2 dev ens160 192.168.80.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
4.3删除路由表条目
[root@server ~]# ip route del 192.168.70.0/24 via 172.25.254.2 dev ens160 [root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.10 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100 192.168.80.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
总结
1. ip命令是Linux下管理网络接口的主要工具之一,可以用于设置IP地址、路由表、网络接口等。
2. ip命令的常见操作包括查看网络接口信息、设置IP地址、设置网络接口等。
3. 查看网络接口信息的操作:
- ip addr:显示所有网络接口的详细信息,包括接口名称、MAC地址、IPv4地址、IPv6地址等。
- ip link:显示所有网络接口的名称和状态信息。
4. 设置IP地址的操作:
- ip addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IP地址。
- ip addr del IP地址/掩码 dev 网络接口名:删除指定网络接口的IP地址。
- ip -4 addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IPv4地址。
- ip -6 addr add IPv6地址/掩码 dev 网络接口名:给指定网络接口添加IPv6地址。
5. 设置网络接口的操作:
- ip link set 网络接口名 up/down:设置指定网络接口的状态为up或down。
- ip link set 网络接口名 name 新名称:给指定网络接口修改名称。
- ip link set 网络接口名 mtu MTU值:设置指定网络接口的最大传输单元大小。
- ip route add 目标地址/掩码 via 网关 dev 网络接口名:添加路由规则,指定目标地址走指定的网关。
6. 其他常用操作:
- ip neigh:显示ARP缓存表。
- ip route:显示和管理路由表。
- ip rule:显示和管理路由策略。
AI生成项目 bash
华子目录
1.ip命令是什么
ip
命令是一个非常强大的命令行工具,用于管理与配置网络接口和路由表
1.1ip命令的由来
ip命令
是从早起的Unix系统
中的ifconfig命令
发展而来的。ifconfig命令
可以用于配置和管理网络接口,但是他的功能有限
,不能管理路由器
,因此ip命令
应运而生。随着网络技术的不断发展,ip命令
也不断进行更新和扩展,成为了一个功能强大的网络工具
。现在,在许多Linux和Unix系统
中,ip命令
已经取代了ifconfig命令
,成为管理网络接口和路由表的主要工具
。
1.2ip命令的安装包
ip命令
来自iproute软件包
[root@server ~]# yum whatprovides ip iproute-6.0.0-2.el9.x86_64 : Advanced IP routing and network device configuration tools 仓库 :base 匹配来源: 文件名 :/usr/sbin/ip 提供 : /sbin/ip
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
1.2ip选项
(基本不用)
-V
:显示指令版本信息
-s
:输出更详细的信息
-f
:强制使用指定的协议簇
-4
:指定使用的网络层协议是ipv4协议
-6
:指定使用的网络层协议是ipv6协议
-0
:输出信息每条记录输出一行
,即使内容较多也不换行显示
-r
:显示主机时,不使用ip地址
,而使用主机的域名
2.查看网络信息
2.1显示全部网络接口信息
ip address show
[root@server ~]# ip address show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 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: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0 inet 192.168.54.131/24 brd 192.168.54.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet 172.25.254.130/24 scope global ens160 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe9e:1d25/64 scope link noprefixroute valid_lft forever preferred_lft forever
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
2.2显示单个网络接口信息
ip address show ens160
[root@server ~]# ip address show ens160 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0 inet 192.168.54.131/24 brd 192.168.54.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet 172.25.254.130/24 scope global ens160 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe9e:1d25/64 scope link noprefixroute valid_lft forever preferred_lft forever
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
2.3显示单个接口状态
ip link show ens160
[root@server ~]# nmcli networking disabled [root@server ~]# ip link show ens160 2: ens160: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
[root@server ~]# nmcli networking enabled [root@server ~]# ip link show ens160 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 00:0c:29:9e:1d:25 brd ff:ff:ff:ff:ff:ff altname enp3s0
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
2.4查看路由表
ip route show
[root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.130 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100
AI生成项目 bash
- 1
- 2
- 3
- 4
2.5查看arp缓存
ip neighbour show
[root@server ~]# ip neighbour show 172.25.254.1 dev ens160 lladdr 00:50:56:c0:00:08 REACHABLE
AI生成项目 bash
- 1
- 2
3.设置网卡ip地址
3.1启用或停用网卡
- 启动接口为
ens160
的网卡
[root@server ~]# ip link set ens160 up
AI生成项目 bash
- 1
- 关闭接口为
ens160
的网卡
[root@server ~]# ip link set ens160 down
AI生成项目 bash
- 1
3.2设置默认网关
<gateway_ip>
为网关地址,<interface>
为网络接口
[root@server ~]# ip route add default via <gateway_ip> dev <interface>
AI生成项目 bash
- 1
3.3新增网卡地址
- 注意新增的
IP地址
是临时生效
(重启无效
),要长久生效
,修改网卡配置
文件或者使用nmcli命令
- 给
ens160
网卡,新增ip地址
[root@server ~]# ip address add 192.168.1.100/24 dev ens160
AI生成项目 bash
- 1
3.4删除ip地址
[root@server ~]# ip address del 192.168.1.100/24 dev ens160
AI生成项目 bash
- 1
- 发现已经没有
192.268.1.100/24
这个ip地址
了
3.5删除默认网关
[root@server ~]# ip route del default
AI生成项目 bash
- 1
4.管理路由表
4.1新增路由表
[root@server ~]# ip route add 192.168.80.0/24 via 172.25.254.2
AI生成项目 bash
- 1
- 注意:此时的
网关地址
必须在主机
中真实存在
,否则添加失败
- 如果主机中有多个网卡,添加路由时指定网卡
[root@server ~]# ip route add 192.168.70.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
4.2查看路由表
[root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.10 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100 192.168.70.0/24 via 172.25.254.2 dev ens160 192.168.80.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
4.3删除路由表条目
[root@server ~]# ip route del 192.168.70.0/24 via 172.25.254.2 dev ens160 [root@server ~]# ip route show default via 192.168.54.2 dev ens160 proto static metric 100 172.25.254.0/24 dev ens160 proto kernel scope link src 172.25.254.10 192.168.54.0/24 dev ens160 proto kernel scope link src 192.168.54.131 metric 100 192.168.80.0/24 via 172.25.254.2 dev ens160
AI生成项目 bash
- 1
- 2
- 3
- 4
- 5
- 6
总结
1. ip命令是Linux下管理网络接口的主要工具之一,可以用于设置IP地址、路由表、网络接口等。