Ubuntu 18静态路由问题

我正在将旧的ubuntu安装迁移到18版本,但在使用不同的网络时似乎有一些静态路由问题。

首先,我尝试使用NetPlan。 我在每个网络上配置了两个不同网络的NICS,但是,我不知道这是否是一个内核问题(可能缺少某个模块)或者它是否是一个ubuntu 18问题(怀疑)。

sympton是只有默认路由才有效。 我可以添加多个具有不同网络和静态路由和网关的网卡,但只有默认路由才有效。

这是我的NetPlan配置文件:

network: version: 2 renderer: networkd ethernets: ens32: addresses: - 177.185.x.66/29 - 177.185.x.67/29 - 177.185.x.68/29 - 177.185.x.69/29 - 177.185.x.70/29 gateway4: 177.185.x.65 nameservers: addresses: - 8.8.8.8 search: - mydomain.net routes: - to: 0.0.0.0/0 via: 177.185.x.65 optional: true ens34: addresses: - 168.96.x.2/24 routes: - to: 168.96.x.0/24 via: 168.96.x.1 

NetPlan工作得很好:应用新配置时没问题。 路由表看起来很正常:

 default via 177.185.x.65 dev ens32 proto static 168.96.x.0/24 via 168.96.x.1 dev ens34 168.96.x.0/24 dev ens34 proto kernel scope link src 168.96.x.10 177.185.x.64/29 dev ens32 proto kernel scope link src 177.185.x.66 

但我只能ping 177.185.x.64 / 29网络。 另一个没有回应。

当我将默认路由更改为辅助网络(168.96.x.0 / 24)时,另一个停止响应。

我首先想到它可能与IP路由内核模块有关,但我找不到4.15上的旧内核相同的选项。

任何帮助将非常感激。

提前致谢。

BR,拉斐尔

首先,ifupdown包已弃用,不再适用。 所以你最好避免这种情况。

第二,显然你不明白我之前在我的post上写过你的东西:路由表的我们。

如此处所述,任何给定的OS只有一个可能的网关。 路由器或任何其他设备相同。 如果您需要多个网关,则需要一个重复的系统,因为网络上传输的任何给定网络包的元数据都不能提及多个网关。 这就是我们需要不同路由表的原因。 而且我没有在您的文件中看到创建另一个路由表的行。 这就是为什么你没有对第二个接口上到达数据包的任何确认…简单就是这样。 包裹到了,他们只是不被承认,因为他们不能。

如果您查看我之前链接的解决方案,您可以清楚地看到表格,因此系统知道要创建的内容以及如何创建它。 就那么简单。 坦率地说,我不明白你为什么要抗拒它….

  routes: - to: 0.0.0.0/0 via: 192.168.3.1 metric: 100 table: 101 

这是路由策略的创建+附加到它的特定表。

  routing-policy: - from: 192.168.3.0/24 table: 101 

这是规则的创建,它指定需要注册所有传入的数据包并在该表中发送数据包。

另外,我强烈建议您使用静态地址的矢量/表格代替列表。 所以更像是[.../..,.../..,.../..] 。 再次,就像我的例子。