linux 路由第二个内部网络

linux 路由第二个内部网络

在我的网络配置中,我有三个交换机:

  1. 互联网(xx.xx.140.129/25)
  2. 内部 SAN(10.1.1.0/24)
  3. iLo 管理(10.1.30.0/24)

我有一台用于管理的 Linux 服务器,需要访问所有三个网络,但它只有 2 个 NIC。我已将交换机 #2 和 #3 连接在一起,因此它们之间有一条物理路径,我尝试过ip route add 10.1.1.0/24 eth0,但没有成功。关于如何做到这一点,有什么想法吗?

[root@ilo]# 路线 -n
内核 IP 路由表
目标网关 Genmask 标志 指标参考使用 Iface
XX.XX.140.128 0.0.0.0 255.255.255.128 U 0 0 0 eth1
10.1.30.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
0.0.0.0 XX.XX.140.129 0.0.0.0 UG 0 0 0 eth1

答案1

如果出于安全原因想要分离流量,则应使用 VLAN 标记。为此,您将需要托管交换机。

如果你不需要出于安全考虑而分离流量,那么你应该对 #2 和 #3 使用相同的 IP 前缀

如果您仍想使用您的设计(例如,如果您计划稍后使用管理型交换机分离网络),那么您可以在接口上使用 IP 别名(添加辅助 IP 地址)。

要调试网络问题,请从物理层到应用程序层进入网络堆栈:

  1. 测试您的电缆。路径上的所有接口是否都已连接?例如,所有接口的所有以太网 LED 是否都在闪烁?
  2. 是设备在应答arpingping。请尝试同时使用 IP 和主机名。
  3. 运行traceroute并查看数据包如何路由。使用调试来ip route get <IP_destination>查找数据包将在哪个接口上路由。
  4. 使用telnetnc等来查看应用程序是否正在应答。

编辑: 跑步:

ip route del 10.1.1.0/24 dev eth0   # remove the fixed route
ip addr add 10.1.1.1/24 dev eth0    # add an IP alias 

问题是您在 eth0 上没有来自 10.1.30.0/24 前缀的 IP。

答案2

设置路由只是游戏的一部分,但内部 SAN 网络如何知道如何到达 10.1.30.10?它缺少返回的路由。

最简单的解决方案:为您的 eth0 分配一个子网 10.1.1.0/24 的 IP:

ip addr add 10.1.1.xyz/24 dev eth0

相关内容