android - 是否可以将两个不同的默认网关添加到 android 中两个不同 NIC 的路由表中?

标签 android routing iptables gateway nic

默认情况下,默认连接的数据包会使用eth0出入。 路由表中的默认网关是eth0的gw ip。

当另一个接口(interface)说 eth1 up 时,我想为 eth1 添加另一个默认网关。 这在安卓中可能吗? 因为我不能为 eth1 添加另一个默认网关,因为已经存在 eth0。

感谢您的帮助。

最佳答案

默认网关只有一个,是默认的。您可以有多个接口(interface),每个接口(interface)具有不同的网关,但只有一个默认值(您的系统无法选择)。

想象一下:

eth0 - IP: 192.168.0.10/24 Gateway: 192.168.0.1
eth1 - IP: 192.168.1.10/24

您应该至少有 3 条路线(通常是自动路线):

To go to some IP on 192.168.0.0, go thru eth0.
To go to some IP on 192.168.1.0, to thru eth1.
To go to anywhere else, go thru 192.168.0.1.

所以您看,您不需要一个以上的默认网关。您可能想要的是特定路由的网关。假设您的网络 192.168.2.0 只能通过使用 192.168.1.1 的网关访问。通过以上配置,您的机器将尝试使用默认网关 192.168.0.1。你可以使用类似的东西:

route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1

这样您将拥有 2 个网关,但默认只有 1 个。第二个仅用于 192.168.2.0 网络。

关于android - 是否可以将两个不同的默认网关添加到 android 中两个不同 NIC 的路由表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7155830/

相关文章:

java - 读取调制解调器固件版本 : Android

android 搜索不工作

scala - 在Play 2路由中处理自由格式的GET URL参数

android - iptables 在列表中移动规则

mysql - fail2ban 添加 PHP 函数

android - 标题等未显示在 Android 工具栏中

CakePHP 3.x 可选语言路由

node.js - 未调用 Express 中间件

Android:NAT 表: “FIX ME! impliment getnetbyaddr() bionic/libc/bionic/stubs.c:444” 是什么意思以及如何修复它

android - 屏幕锁定时 MediaPlayer 有时不准备