有几种不同的方式可以在CentOS / Redhat 7.x上启用IP地址。在本指南中,我们将为您提供配置少量附加IP地址,整个CIDR网络前缀(块/范围)以及删除它们的方法的说明和示例。
确定网络设备名称
在我们配置或删除任何其他IP地址之前,我们将要确定我们的主要网络接口的设备名称,这可以通过在我们的终端中运行以下命令来发现:
[root@localhost ]# ip link | awk 'NR%2==1' | awk '{print $2,$8,$9}' | tr -d ':'
其输出应类似如下:
lo state UNKNOWN
enp3s0 state UP
enp4s0 state DOWN
上面示例中的第一个设备被命名lo,这表示它是您的回送接口。第二行输出通常是您的主要网络接口,在这个例子中。它的状态是目前唯一的UP(主动/在线)状态,所以我们可以假定这是正确的接口来配置为另一个DOWN(断开/不活动)。应该配置另一个接口(例如:enp4s0)UP,然后您将需要决定在哪个接口上配置附加的IP空间。
查找网络配置文件
使用ip link早期命令的输出,我们现在可以在我们的目录中找到适当的网络配置文件network-scripts。接口配置文件以ifcfg-接口的设备名称开头。所以,我们来看看我们界面上当前配置的一切enp3s0如何(用你的界面的名字替换):
[root@localhost ]# cat /etc/sysconfig/network-scripts/ifcfg-enp3s0
您的输出应类似于以下内容:
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp3s0
UUID=a007fd6d-4cc5-45b6-9a38-991a8e820eaf
DEVICE=enp3s0
ONBOOT=yes
IPADDR=10.0.0.2
PREFIX=29
GATEWAY=10.0.0.1
DNS1=8.8.8.8
DNS2=8.8.4.4
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
在上面的示例中,当前配置的唯一IP地址为10.0.0.2。它是/ 29 prefix(PREFIX=29)的一部分,其中也可以配置IP 10.0.0.3,10.0.0.4,10.0.0.5和10.0.0.6。
如果您打算在网络接口上配置多个IP地址,那么您可能需要使用范围文件进行配置。范围文件允许您配置整个CIDR网络前缀(/ 29,/ 24等),因此您不必单独配置每个IP地址。继续到范围文件部分或跳到部分手动添加的IP地址,如果你只需要启用少量的IP地址的。
范围文件
首先,我们更新我们的主要网络接口的配置文件(用你的接口名称替换):
[root@localhost ]# vi /etc/sysconfig/network-scripts/ifcfg-enp3s0
现在,将以下文本附加到文件的末尾并保存: NM_CONTROLLED=NO
对于启用范围文件,Redhat / CentOS 7.x需要进行此配置更改。它简单地允许我们通过使界面不再被Network Manager系统控制来利用范围文件。完成上述更改并保存文件后,我们可以继续创建我们的范围文件:
[root@localhost ]# vi /etc/sysconfig/network-scripts/ifcfg-enp3s0-range
将以下文本行添加到新的配置文件(ifcfg-enp3s0-range)中。用您自己的唯一网络配置(IP,前缀等)替换每个参数的设置:
IPADDR_START=192.168.1.2 - 范围内第一个可用的IP地址。
IPADDR_END=192.168.1.254 - 范围内的最后一个可用IP地址。
PREFIX=24 - 块/范围的IP的CIDR前缀。(请参阅下面的CIDR前缀表,以确定您的IP范围的正确前缀号码。)
CLONENUM_START=0 - 接口别名起始号码,它将为绑定到接口的每个附加IP地址自动增加一个IP地址,为其创建一个别名(例如:enp3s0:0,enp3s0:1等)。如果您有多个范围文件,那么您需要确保将此号码设置为下一个可用号码(例如:如果您已按照此处所述配置了/ 24)。
它应该看起来类似于以下范围文件:
IPADDR_START=192.168.1.2
IPADDR_END=192.168.1.254
PREFIX=24
CLONENUM_START=0
/ 32 192.168.1.90/32 1
/ 31 192.168.1.90/31 2
/ 30 192.168.1.92/30 4
/ 29 192.168.1.200/29 8
/ 28 192.168.1.16/28 16
/ 27 192.168.1.64/27 32
/ 26 192.168.1.192/26 64
/ 25 192.168.1.128/25 128
/ 24 192.168.1.0/24 256
在上面的例子范围文件,我们配置/ 24前缀,其中,所述第一IP地址(192.168.1.0)是Network地址,第二个是Gateway地址(192.168.1.1),和最后一个IP地址为Broadcast( 192.168.1.255)地址。这三个IP地址在这种意义上是“不可用”的,因为它们需要以这种方式配置,以便其余的IP地址正常工作。或者,您可以配置不同的Gateway,如果您需要使用不同的默认值。如果是这样,那么也可以简单地追加GATEWAY=YOURGATEWAYADDRESS到文件中。当前的默认Gateway地址可以通过运行以下命令来确定:
[root@localhost ~]# ip route | grep default
default via 192.168.1.1 dev enp3s0
我们仔细检查一下输入正确的信息,我们的范围文件中没有错误。这很重要,因为下一步可能会导致您的服务器无法访问。确认一切顺序后,请重新启动网络服务以使更改生效:
[root@localhost ]# systemctl restart network
删除IP地址
现在我们知道如何添加额外的IP地址,让我们快速了解如何删除它们。要删除单个IP地址,您可以发出以下命令:
[root@localhost ]# ip addr del [ipaddress] dev [network_device_name]
例如:
[root@localhost ]# ip addr del 192.168.1.72/32 dev enp3s0
如果要删除整个范围,可以使用以下命令刷新IP:
[root@localhost ]# ip -s a f to [CIDRPrefix]
例如:
[root@localhost ]# ip -s a f to 192.168.1.0/24
本文由 podipod软库网 作者:DevOps 发表,转载请注明来源!