Linux 服务绑定的默认接口

Linux 服务绑定的默认接口

我在 2 台服务器上运行了 tomcat 服务。Centos 7 和 Centos 5。

两台服务器都有公共 IP 和私有 IP。

Tomcat server.xml 中有 addaddress="auto"。我可以设置 IP,但我试图弄清楚为什么它选择了不同的接口。

在 CentOS 5 上,当我启动 tomcat 时,它会绑定到私有 IP。但 CentOS 7 会绑定到公共 IP。我已验证网络配置,一切看起来都很相似。

公共接口是两个服务器的默认网关。

我没有办法解决这个问题。

公共接口有网关,私有接口没有网关。

Centos 5路由表:

   Kernel IP routing table
   Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
   100.100.100.224 0.0.0.0         255.255.255.224 U     0      0        0 eth0
   10.10.10.0      0.0.0.0         255.255.255.0   U     0      0        0 eth1
   169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth1
   0.0.0.0         100.100.100.225 0.0.0.0         UG    0      0        0 eth0

Centos7路由表

   Kernel IP routing table
   Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
   0.0.0.0         200.200.200.225 0.0.0.0         UG    0      0        0 ens192
   20.20.20.0      0.0.0.0         255.255.255.0   U     0      0        0 ens224
   200.200.200.224 0.0.0.0         255.255.255.224 U     0      0        0 ens192
   169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 ens192
   169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 ens224

答案1

该文件需要一个及其私有IP的/etc/hosts条目。hostname

Tomcat 尝试获取返回的默认值java.net.InetAddress.getLocalHost().getHostAddress().

https://tomcat.apache.org/tomcat-6.0-doc/config/cluster-receiver.html

相关内容