最近新的项目又开始了, 开始还算顺利, 却不料碰到了一个奇怪的问题. 先来了解下问题的背景. 这个项目里, Android中有两个以太网网口, 一个用于内网通讯
开始我有点不相信竟然会有这样的问题, 但事实摆在面前, 我也不好抵赖, 于是自己找来一个板子, 看了下, 才逐渐找到答案. 问题的根源在于Android配置的策略路由fwmark
规则, 要解决问题, 只要我们将包含了
大致分如下几个部分来讲一讲这个问题:
- 介绍下什么是Policy Routing<策略路由>
- 分析具体的问题, 并给出方案
- 从源代码角度来分析下, 为何TCP无法建立, 但ping却可以