如何路由来自网络共享的所有流量?

时间:2014-04-29 17:12:41

标签: android proxy dns android-wifi tethering

我正在研究一些测试项目,基本上我想在我处于热点模式时将所有流量路由到固定地址。我有IP范围,例如192.168.0.0/24我不知道我是否可以使用iptables 没有root 或JNI函数(找不到符合我想要的) 开箱即用的思维非常受欢迎(DNS,客户端连接上的低级别数据包广播......)

任何想法?

编辑:Android和iOS如何检测网络门户?

来源:https://sudoroom.org/wiki/Mesh/Firmware/Splash_page 他们尝试使用HTTP GET

iOS:http://www.apple.com/library/test/success.html,如果没有门户网站

,预计会有200个

Android:http://clients3.google.com/generate_204并且当不在门户网站后面时期望204状态,任何其他状态是门户网站

那么,我该如何正确回应这些检测?

1 个答案:

答案 0 :(得分:1)

最简单的方法是在配置要连接的wifi AP时启用socks代理。这取决于android的版本,但它通常类似于:

  1. 触摸并按住要连接的wifi网络。
  2. 应弹出一个对话框。在该对话框中,选择高级。
  3. 找到代理选项,然后输入要将流量转发到的服务器的IP和端口。
  4. Android会说SOCKS,只要你的代理也说SOCKS,你就可以了。如果您可以根设备(取决于您的Android版本),请自动配置此代理。例如,请参阅适用于Android的AdBlock Plus。

    如果您不想使用代理路由,则可以在设备已植根时手动设置ebtables规则。这是非常多的工作,因为你必须小心不要弄乱你的设备已经在做的NAT。