我正在尝试建立一个系统,其中一个服务器有两个VLAN和两个相应的网络接口。我希望能够将服务绑定到特定的接口,以便它只接收来自该IP的通信量。这是当前的设置:
(ifconfig)
enp28s0f0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9000
inet A.B.1.171 netmask 255.255.255.0 broadcast A.B.1.255
inet6 [.....] prefixlen 64 scopeid 0x20<link>
ether [.....] txqueuelen 1000 (Ethernet)
RX packets 37262 bytes 6954634 (6.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 28457 bytes 5529921 (5.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp28s0f1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9000
inet C.D.1.112 netmask 255.255.255.0 broadcast C.D.1.255
inet6 [.....] prefixlen 64 scopeid 0x20<link>
ether [.....] txqueuelen 1000 (Ethernet)
RX packets 2314778 bytes 212155740 (202.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5446 bytes 604308 (590.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 6600 bytes 420545 (410.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6600 bytes 420545 (410.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
(netstat -rn)
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 A.B.1.1 0.0.0.0 UG 0 0 0 enp28s0f0
0.0.0.0 C.D.1.1 0.0.0.0 UG 0 0 0 enp28s0f1
A.B.1.0 0.0.0.0 255.255.255.0 U 0 0 0 enp28s0f0
C.D.1.0 0.0.0.0 255.255.255.0 U 0 0 0 enp28s0f1
(ip route)
default via A.B.1.1 dev enp28s0f0 proto static metric 100
default via C.D.1.1 dev enp28s0f1 proto static metric 101
A.B.1.0/24 dev enp28s0f0 proto kernel scope link src A.B.1.171 metric 100
C.D.1.0/24 dev enp28s0f1 proto kernel scope link src C.D.1.112 metric 101(我用A,B,C,D替换了敏感信息)
目前,所有入站流量都是通过enp28s0f0路由的。我能够将服务A绑定到enp28s0f0接口IP A.B.1.171并正常接收流量。当通过enp28s0f1接口IP C.D.1.112向服务A发出请求时,它不会像预期的那样进入服务A。
但是,当我将服务B绑定到enp28s0f1接口IP时,我根本无法接收任何流量(我尝试向A.B.1.171和C.D.1.112发出请求)。我怀疑这与用于两个接口子网的相同网关0.0.0.0有关,但我不完全确定。
另外,值得注意的是,我目前只使用一个路由表--默认的路由表--这可能会产生影响,但我不确定。
服务器正在运行RHEL7.9。如有任何帮助或指导,将不胜感激!
发布于 2021-05-14 04:07:35
从您共享的路由表输出中,您有两个默认网关,这是一个问题。您只需要一个默认网关,其余的应该是特定的目标网络。
https://unix.stackexchange.com/questions/649568
复制相似问题