当某台服务器需要绑定很多IP段时,如果将Gateway全部放在SW或RT,将会占用设备很多ARP表,并且很多客户会嫌单独绑定IP很烦,
所以可以直接给服务器网卡配置一个主IP,在L3 SW或RT给绑定到该服务器的IP段做一个Static-Routing指向服务器网卡主IP,并在服务器的环回口(Lo口)绑定该网段。
如服务器主IP为172.20.15.11,需要绑定192.168.0.0/24和192.168.2.0/24
L3网关为172.20.15.1,服务器物理网卡绑定IP地址172.20.15.11/24,网关172.20.15.1
在L3网关做Static-Route,Destination 192.168.0.0/24 192.168.2.0/24 动作Next-Hop下一跳为172.20.15.11。
在服务器lo端口绑定192.168.0.0/24和192.168.2.0/24,即服务器会监听这两个段所有IP。实测在物理网卡监听无效,一般使用命令:ip address add 192.168.0.0/24 dev lo 来添加
但是发现,这种命令添加后,会在重启后失效,我们选用NetworkManager服务来接管和添加lo端口,并且使用nmcli给网卡添加IP的命令 nmcli connection mod lo +ipv4.address 这种方式给lo端口添加IP也会在重启后失效,必须新建一个lo端口配置文件来进行。
先介绍Centos和Ubuntu如何用NetworkManager接管网卡管理功能。
Ubuntu下:
先apt update更新源,然后执行apt install network-manager -y 来安装网关组件;
编辑/etc/netplan/目录下的网卡配置文件中,添加内容 renderer: NetworkManager来让nmcli接管网卡,之后执行netplan apply加载网卡配置,
然后执行nmcli conn show和nmcli dev stat 看网卡是否被nmcli接管,如果物理3网卡和环回口都被接管,这时候执行下面命令:
sudo nmcli connection add type loopback \
con-name lo \
ifname lo \
ipv4.addresses “192.168.0.0/24,192.168.2.0/24” \
ipv4.method manual \
autoconnect yes
参数说明:
type
loopback : lo
是环回接口,需指定为 loopback 类型。
con-name lo-custom
:自定义连接名称(可任意命名)。
ifname lo
:绑定到环回接口。
ipv4.addresses
:指定要绑定的 IP 网段(支持多个,用逗号分隔)。
ipv4.method manual
:手动配置 IP,非 DHCP。
autoconnect yes
:系统启动时自动激活此连接。
来手动新建一个connection,对应lo端口(即便此时nmcli conn show已经有一个lo口),然后nmcli conn up lo来应用更改,这时,重启之后,lo口的IP还在。
这时候看,cd /etc/netplan/目录已经有新建一个新的lo端口的配置文件,可以修改这个配置文件来修改绑定的IP段:
root@localhost:~# cat /etc/netplan/90-NM-3296829d-8ae9-4ddc-974f-e99e8fe927e6.yaml
network:
version: 2
nm-devices:
NM-3296829d-8ae9-4ddc-974f-e99e8fe927e6:
renderer: NetworkManager
networkmanager:
uuid: “3296829d-8ae9-4ddc-974f-e99e8fe927e6”
name: “lo”
passthrough:
connection.type: “loopback”
connection.interface-name: “lo”
loopback._: “”
ipv4.address1: “192.168.0.0/24”
ipv4.address2: “192.168.2.0/24”
ipv4.method: “manual”
ipv6.addr-gen-mode: “default”
ipv6.method: “auto”
proxy._: “”
root@localhost:~#
也可以直接和以前一样,执行命令nmcli con mod lo +ipv4.addresses 123.123.6.0/24和nmcli con mod lo -ipv4.addresses 123.123.6.0/24来添加和删除LO口的IP段,会自动写入lo环回口配置文件,重启一样生效。
Centos操作如上,只是在centos中,安装NMCLI是yum -y install NetworkManager