• 配置网络接口的“IP“命令


    ip命令是一个新网络命令行工具,它用于在LInux系统中分配一个IP地址给一个网络接口或者配置/更新有用的网络变量。它是iproute软件包的组成部分,并且提供了若干网络管理任务,诸如开启或关闭网络接口,分配和移除IP地址和路由,管理ARP缓存等。

    1. [root@rockygu ~]# dnf whatprovides "ip"
    2. Last metadata expiration check: 2:42:10 ago on Mon 01 Aug 2022 07:45:22 PM CST.
    3. iproute-5.15.0-4.el8.x86_64 : Advanced IP routing and network device configuration tools
    4. Repo : @System
    5. Matched from:
    6. Filename : /usr/sbin/ip
    7. Provide : /sbin/ip

    ip命令非常类似于老的ifconfig命令,但由于添加了更多功能和能力,它要强大得多。ifconfig命令在所有现代Linux发行版中已经被启用并且被ip命令替代。然而,ifconfig命令对于大部分linux发行版仍然可用。

    注意:在进行任何更改前请备份配置文件。

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

    要在Linux中配置静态IP地址,你需要更新或编辑网络配置文件来分配一个静态IP地址给系统。你必须是一个用su命令从终端或者命令提示的超级用户。

    对于RHEL/CentOS/Fedora和Rocky Linux/AlmaLinux

    用编辑器打开并且编辑网络配置文件。例如,分配IP地址给enp3s0接口。

    [root@rockygu ~]# vim /etc/sysconfig/network-scripts/ifcfg-enp3s0

    输出结果:

    1. TYPE=Ethernet
    2. PROXY_METHOD=none
    3. BROWSER_ONLY=no
    4. BOOTPROTO=static
    5. DEFROUTE=yes
    6. IPV4_FAILURE_FATAL=no
    7. IPV6INIT=yes
    8. IPV6_AUTOCONF=yes
    9. IPV6_DEFROUTE=yes
    10. IPV6_FAILURE_FATAL=no
    11. IPV6_ADDR_GEN_MODE=stable-privacy
    12. NAME=enp3s0
    13. UUID=aed3f17e-747c-4a13-b421-407bb0a57f69
    14. DEVICE=enp3s0
    15. IPADDR=192.168.3.30
    16. PREFIX=24
    17. ONBOOT=yes

    在设置了配置后,重启网络服务。

    [root@localhost network-scripts]# systemctl restart NetworkManager.service

    1、如何分配一个IP地址给一个特定端口

    以下命令将用

    [root@localhost ~]# ip addr add 192.168.3.31 dev enp3s0

    于立即分配一个IP地址给一个特定接口(enp3s0)。

    1. [root@localhost ~]# ip addr show enp3s0
    2. 2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    3. link/ether c4:00:ad:54:a3:23 brd ff:ff:ff:ff:ff:ff
    4. inet 192.168.3.30/24 brd 192.168.3.255 scope global noprefixroute enp3s0
    5. valid_lft forever preferred_lft forever
    6. inet 192.168.3.31/32 scope global enp3s0
    7. valid_lft forever preferred_lft forever
    8. inet6 fe80::53ff:e021:58e4:1629/64 scope link noprefixroute
    9. valid_lft forever preferred_lft forever

    2、如何检测IP地址

    要获取如IP地址、MAC地址信息的网卡接口的信息,使用以下命令。

    1. [root@localhost ~]# ip addr show
    2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    3. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    4. inet 127.0.0.1/8 scope host lo
    5. valid_lft forever preferred_lft forever
    6. inet6 ::1/128 scope host
    7. valid_lft forever preferred_lft forever
    8. 2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    9. link/ether c4:00:ad:54:a3:23 brd ff:ff:ff:ff:ff:ff
    10. inet 192.168.3.30/24 brd 192.168.3.255 scope global noprefixroute enp3s0
    11. valid_lft forever preferred_lft forever
    12. inet 192.168.3.31/32 scope global enp3s0
    13. valid_lft forever preferred_lft forever
    14. inet6 fe80::53ff:e021:58e4:1629/64 scope link noprefixroute
    15. valid_lft forever preferred_lft forever
    16. ...
    17. 8: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    18. link/ether 00:19:0f:3d:c9:3d brd ff:ff:ff:ff:ff:ff
    19. inet 192.168.50.74/24 brd 192.168.50.255 scope global noprefixroute dynamic eno1
    20. valid_lft 86072sec preferred_lft 86072sec
    21. inet6 fe80::755d:a1a5:8380:e9f9/64 scope link noprefixroute
    22. valid_lft forever preferred_lft forever
    23. ...

    3、如何移除一个IP地址

    以下命令将从指定接口(enp3s0)移除一个分配的IP地址。

    1. [root@localhost ~]# ip addr del 192.168.3.30/24 dev enp3s0
    2. [root@localhost ~]# ip addr show enp3s0
    3. 2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    4. link/ether c4:00:ad:54:a3:23 brd ff:ff:ff:ff:ff:ff
    5. inet 192.168.3.31/32 scope global enp3s0
    6. valid_lft forever preferred_lft forever
    7. inet6 fe80::53ff:e021:58e4:1629/64 scope link noprefixroute
    8. valid_lft forever preferred_lft forever

    4、如何启用网络接口

    接口名称(enp3s0)的"up"标记将启用一个网络接口。例如,以下命令将激活enp3s0网卡接口。

    1. [root@localhost ~]# ip link set enp3s0 down
    2. [root@localhost ~]# ip addr show enp3s0
    3. 2: enp3s0: mtu 1500 qdisc mq state DOWN group default qlen 1000
    4. link/ether c4:00:ad:54:a3:23 brd ff:ff:ff:ff:ff:ff

    5、如何禁用网络接口

    接口名称(enp3s0)的"down"标记禁用一个网络接口。例如,以下命令将禁用enp3s0网络接口。

    1. [root@localhost ~]# ip link set enp3s0 up
    2. [root@localhost ~]# ip addr show enp3s0
    3. 2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    4. link/ether c4:00:ad:54:a3:23 brd ff:ff:ff:ff:ff:ff
    5. inet 192.168.3.30/24 brd 192.168.3.255 scope global noprefixroute enp3s0
    6. valid_lft forever preferred_lft forever
    7. inet6 fe80::53ff:e021:58e4:1629/64 scope link noprefixroute
    8. valid_lft forever preferred_lft forever

    6、如何检测路由

    输入以下命令检测系统的路由表信息。

    1. [root@localhost ~]# ip route show
    2. default via 192.168.50.1 dev eno1 proto dhcp metric 100
    3. 192.168.3.0/24 dev enp3s0 proto kernel scope link src 192.168.3.30 metric 101
    4. 192.168.50.0/24 dev eno1 proto kernel scope link src 192.168.50.74 metric 100
    5. 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

    7、如何添加静态路由

    你为什么需要添加静态路由或者手动路由,因为那些流量一定不通过默认网关。我们需要添加静态路由使得流量从最佳路径到达目的地。

    1. [root@localhost ~]# ip route add 10.30.40.0/24 via 192.168.3.254 dev enp3s0
    2. [root@localhost ~]# ip route show
    3. default via 192.168.50.1 dev eno1 proto dhcp metric 100
    4. 10.30.40.0/24 via 192.168.3.254 dev enp3s0
    5. 192.168.3.0/24 dev enp3s0 proto kernel scope link src 192.168.3.30 metric 101
    6. 192.168.50.0/24 dev eno1 proto kernel scope link src 192.168.50.74 metric 100
    7. 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

    8、如何移除静态路由

    要移除分配的静态路由,只要输入以下命令。

    1. [root@localhost ~]# ip route del 10.30.40.0/24
    2. [root@localhost ~]# ip route show
    3. default via 192.168.50.1 dev eno1 proto dhcp metric 100
    4. 192.168.3.0/24 dev enp3s0 proto kernel scope link src 192.168.3.30 metric 101
    5. 192.168.50.0/24 dev eno1 proto kernel scope link src 192.168.50.74 metric 100
    6. 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

    9、如何添加永久的静态路由

    在系统重启后,所有以上路由将丢失。要添加永久静态路由,编辑文件/etc/sysocnfig/network-scripts/route-enp3s0。

    1. [root@localhost network-scripts]# cat route-enp3s0
    2. 10.30.40.0/24 via 192.168.3.254 dev enp3s0

    接着,在使用命令输入所有细节后,重启网络服务。

    1. [root@localhost network-scripts]# systemctl restart NetworkManager
    2. [root@localhost network-scripts]# ip route show
    3. default via 192.168.50.1 dev eno1 proto dhcp metric 100
    4. 10.30.40.0/24 via 192.168.3.254 dev enp3s0
    5. 192.168.3.0/24 dev enp3s0 proto kernel scope link src 192.168.3.30 metric 101
    6. 192.168.50.0/24 dev eno1 proto kernel scope link src 192.168.50.74 metric 100
    7. 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

    10、如何添加默认网关

    能够全局地或者为接口特定配置文件指定默认网关。默认网关地优势是如果我们在系统中有多块网卡。你可以用以下命令立即添加默认网关。

    1. [root@localhost network-scripts]# ip route add default via 192.168.3.254
    2. [root@localhost network-scripts]# ip route show
    3. default via 192.168.3.254 dev enp3s0
    4. default via 192.168.50.1 dev eno1 proto dhcp metric 100
    5. 10.30.40.0/24 via 192.168.3.254 dev enp3s0
    6. 192.168.3.0/24 dev enp3s0 proto kernel scope link src 192.168.3.30 metric 101
    7. 192.168.50.0/24 dev eno1 proto kernel scope link src 192.168.50.74 metric 100
    8. 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

    11、如何删除默认网关

    用以下命令可以删除默认网关。

    1. [root@localhost network-scripts]# ip route del default via 192.168.3.254
    2. [root@localhost network-scripts]# route -n
    3. Kernel IP routing table
    4. Destination Gateway Genmask Flags Metric Ref Use Iface
    5. 0.0.0.0 192.168.50.1 0.0.0.0 UG 100 0 0 eno1
    6. 10.30.40.0 192.168.3.254 255.255.255.0 UG 0 0 0 enp3s0
    7. 192.168.3.0 0.0.0.0 255.255.255.0 U 101 0 0 enp3s0
    8. 192.168.50.0 0.0.0.0 255.255.255.0 U 100 0 0 eno1
    9. 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
  • 相关阅读:
    RabbitMQ MQTT集群方案官方说明
    SpringBoot集成Spring Data JPA项目实操
    vue学习之属性绑定
    vlookup查找匹配值超过255个字符显示#Value的解决办法
    ①常用API----Math
    Chapter4.5:根轨迹法考研参考题
    x86 架构的机载计算机,它来了!
    JavaScript函数进阶:函数的定义和调用
    2022.11.23Max Sum Plus Plus HDU - 1024
    Spring中实现AOP的功能
  • 原文地址:https://blog.csdn.net/yuyuyuliang00/article/details/126111464