linux中10个有用的IP命令配置静态IP路由

2022-06-02 16:07:41 浏览数 (1)

ip 命令是一个新的网络命令行实用程序,用于在 Linux 系统上为网络接口分配 IP 地址或配置/更新网络配置。

它是 iproute2 软件包的一部分,并提供多项网络管理任务,例如打开或关闭网络接口、分配和删除 IP 地址和路由、管理 ARP 缓存等等。

ip命令与旧的ifconfig 命令非常相似,但它的功能要强大得多,添加了更多的功能和能力。

如何配置静态 IP 地址 Internet 协议 (IPv4)

要在 Linux 中配置静态 IP 地址, 你需要更新或编辑网络配置文件以将静态 IP 地址分配给系统。你必须有root的权限(sudo切换也可以)。

适用于 RHEL/CentOS/Fedora 和 Rocky Linux/AlmaLinux

编辑(eth0eth1)

代码语言:javascript复制
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=192.168.0.111
NAME="System eth0"
HWADDR=00:0C:29:28:FD:4C
GATEWAY=192.168.0.1
对于 Ubuntu/Debian/Linux Mint

eth0 网卡设置静态 IP 地址 。编辑配置文件 /etc/network/interfaces 永久更改。

代码语言:javascript复制
# vim /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.111
netmask 255.255.255.0
gateway 192.168.0.1

重启动网络服务。

代码语言:javascript复制
# systemctl restart NetworkManager.service
Or
# /etc/init.d/networking restart

1. 分配 IP 地址

以下命令用于为eth1网卡接口分配 IP 地址

代码语言:javascript复制
# ip addr add 192.168.0.111 dev eth1

Note: 注意,所有这些设置将在系统重新启动后丢失。

2. 查看 IP 地址

要获取网络接口的深度信息,如 IP 地址、MAC 地址信息

代码语言:javascript复制
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:28:fd:4c brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.111/24 brd 11255 scope global eth0
    inet6 fe80::20c:29ff:fe28:fd4c/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:28:fd:56 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.111/24 scope global eth1
    inet6 fe80::20c:29ff:fe28:fd56/64 scope link
       valid_lft forever preferred_lft forever

3. 删除 IP 地址

删除eth1网卡分配的 IP 地址

代码语言:javascript复制
# ip addr del 192.168.0.111/24 dev eth1

4. 启用网络接口

激活eth1 网络接口。

代码语言:javascript复制
# ip link set eth1 up

5. 如何禁用网络接口

禁用eth1 网络接口。

代码语言:javascript复制
# ip link set eth1 down

6. 如何查看路由表?

输入以下命令查看系统的路由表信息。

代码语言:javascript复制
# ip route show
default via 192.168.0.1 dev eth0 proto dhcp metric 100
192.168.0.115/24 dev eth1  proto kernel  scope link  src 111130  metric 1
192.168.0.111/24 dev eth0  proto kernel  scope link  src 112

7. 如何添加静态路由

为什么需要添加静态路由或手动路由,因为流量一定不能通过默认网关。我们需要添加静态路由来指定目标网络

代码语言:javascript复制
# ip route add 0/24 via 192.168.0.1 dev eth0

8. 删除静态路由

删除分配的静态路由

代码语言:javascript复制
# ip route del 0/24

9. 永久添加静态路由

系统重启后,上述所有路由都将丢失。要添加永久静态路由,需要编辑文件/etc/sysconfig/network-scripts/route-eth0

适用于 RHEL/CentOS/Fedora 和 Rocky Linux/AlmaLinux
代码语言:javascript复制
# vim /etc/sysconfig/network-scripts/route-eth0
0/24 via 192.168.0.1 dev eth0

默认情况下route-eth0 文件将不存在,需要创建。

对于 Ubuntu/Debian/Linux Mint

打开文件 /etc/network/interfaces最后添加静态路由。

代码语言:javascript复制
# vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.111
netmask 255.255.255.0
gateway 192.168.0.1
#########{静态路由}###########
up ip route add 0/24 via 192.168.0.1 dev eth0

重新启动网络服务。

代码语言:javascript复制
# systemctl restart NetworkManager.service
Or
# /etc/init.d/networking restart

10. 添加默认网关

可以全局指定默认网关,也可以为特定接口的配置文件指定默认网关。

代码语言:javascript复制
# ip route add default via 192.168.0.1

相关文章

linux网络管理的20个netstat命令

0 人点赞