私の仮想マシンにはIP 192.168.22.10のインターフェイスがあり、IP 192.168.22.11のインターフェイスエイリアス(サブインターフェイス)を作成しました。
各IPは、バックエンドアプリケーションサーバー(Apacheリバースプロキシ)にトラフィックを送信するポート443で仮想ホストをホストします。 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)を実行します。