路线信息

路线信息

在我的虚拟机上,我有一个 IP 为 192.168.22.10 的接口,然后我创建了 IP 为 192.168.22.11 的接口别名(子接口)。

每个 IP 将在端口 443 上托管一个虚拟主机,该虚拟主机会将流量发送到后端应用程序服务器(Apache 反向代理),现在,如果我尝试访问为 IP 192.168.22.10:443 配置的虚拟主机,我可以从外部访问它,但虚拟主机配置为 IP 192.168.22.11:443 我无法访问它。

运行 tcpdump 显示流量正在通过 192.168.22.10

IP地址

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:aa:36:1d brd ff:ff:ff:ff:ff:ff
    inet 192.168.22.10/24 brd 192.168.22.255 scope global noprefixroute ens192
       valid_lft forever preferred_lft forever
    inet 192.168.22.11/24 brd 192.168.22.255 scope global secondary noprefixroute ens192
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:feaa:361d/64 scope link
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:12:25:ce brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:12:25:ce brd ff:ff:ff:ff:ff:ff
5: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:aa:d2:84 brd ff:ff:ff:ff:ff:ff

路线信息

路线-n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.22.254  0.0.0.0         UG    100    0        0 ens192
192.168.22.0    0.0.0.0         255.255.255.0   U     100    0        0 ens192
192.168.22.0    0.0.0.0         255.255.255.0   U     100    0        0 ens192
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

ip路由

default via 192.168.22.254 dev ens192 proto static metric 100
192.168.22.0/24 dev ens192 proto kernel scope link src 192.168.22.10 metric 100
192.168.22.0/24 dev ens192 proto kernel scope link src 192.168.22.11 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

我检查了 netstat,它显示端口 443 上有 192.168.22.11,因此我在 ssl.conf 文件中添加以下行

Listen 192.168.22.10:443 https 
Listen 192.168.22.11:443 https  

现在 netstat 显示

tcp 0 0 192.168.22.11:443 0.0.0.0:* LISTEN 117421/httpd 

但流量仍然通过192.168.22.10

答案1

好吧,我没有得到任何帮助,但没有问题,我自己想出来了。为发现自己遇到同样问题的其他人发布答案。

问题与路由有关。

"ip route add 172.16.5.20 via 192.168.22.254 dev ens192 src 192.168.22.11"

它将在路由表中添加路由

│Kernel IP routing table
│Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
│0.0.0.0         192.168.22.254  0.0.0.0         UG    100    0        0 ens192
│172.16.5.20     192.168.22.254  255.255.255.255 UGH   100    0        0 ens192
│192.168.22.0    0.0.0.0         255.255.255.0   U     100    0        0 ens192
│192.168.22.0    0.0.0.0         255.255.255.0   U     100    0        0 ens192
│192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

但它不会在重新启动或服务重新启动后持续存在

因此,在 /etc/sysconfig/network-scripts/ifcfg-inteface_name 中添加以下行

"172.16.5.20 via 192.168.22.254 dev ens192 src 192.168.22.11"

现在重新启动路径将持续存在

当然要进行适当的防火墙更改(Firewalld/Iptables)

相关内容