在 Ubuntu 上有一个运行 postfix 的“新”邮件服务器。
我们在配置子网和接口时遇到了一些问题。
基本上,2 个子网(.253. 和 .254.)需要通过路由器所在的第 3 个子网(.252.)进行连接。
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 10.62.254.199
netmask 255.255.0.0
network 10.62.254.0
broadcast 10.62.255.255
#gateway 10.62.252.138
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 10.62.252.138
dns-search ***.com
auto eth1
iface eth1 inet static
address 10.62.253.199
netmask 255.255.0.0
network 10.62.253.0
broadcast 10.62.255.255
#gateway 10.62.252.138
#dns-nameservers 10.62.254.199 10.62.253.199 10.62.252.199
dns-nameservers 10.62.252.138
dns-search ***.com
auto eth2
iface eth2 inet static
address 10.62.252.199
netmask 255.255.0.0
network 10.62.252.0
broadcast 10.62.255.255
gateway 10.62.252.138
#dns-nameservers 10.62.254.199 10.62.253.199 10.62.252.199
dns-search ***.com
我有一家外部支持公司正在调查此事(他们构建并配置了这台服务器),但这花费的时间太长了......所以我希望强调这个错误!
答案1
这里最可能的情况是子网掩码不正确,应该是 24 位掩码:255.255.255.0
就目前的配置而言,服务器认为只有一个网络 - 10.62.0.0/16。这意味着它可以使用其任何接口与 10.62.252、10.62.253 或 10.62.254 上的任何机器通信 - 不一定是具有匹配 IP 地址的机器。这是因为它认为它可以通过第一个激活的接口(每次启动时可能都不同)访问所有这些网络。
如果此服务器正在替换充当三个子网网关的另一台服务器,则需要:
- 将子网掩码更改为 255.255.255.0
- 通过取消注释(或确保已设置)在 /etc/sysctl.conf 中启用 IP 路由
net.ipv4.ip_forward=1
如果 255.255.255.0 子网是正确的,即它们与其他设备使用的子网掩码匹配,那么我们还需要查看第 2 层。传统上,在划分子网时,您还会划分 VLAN,即配置交换机上的一组端口以仅相互通信。这意味着您必须确保邮件服务器位于交换机上的正确端口中,或者确认它插入的端口位于正确的 VLAN 中。