開發板同時掛載有線網卡 eth0 (172.16.148.111) 和 USB 無線網卡 wlan0 (172.16.14.110,AP 模式)。手機連上熱點後,開發板無法 Ping 通手機 IP,兩網卡網段互不相通。嘗試加路由 route add default gw 172.16.1.1 甚至強行同網段仍失敗。
Linux 內核默認關閉 IP 轉發,且缺少兩網卡間的 NAT/路由規則。數據包進來了但出不去,或回包找不到路由。
echo 1 > /proc/sys/net/ipv4/ip_forward
# 永久生效修改 /etc/sysctl.conf:net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
完整排查過程見博客:https://blog.csdn.net/qq_21792169/article/details/51234806
關鍵點:僅加路由不夠,必須 開啟 ip_forward + 配置 NAT/防火牆轉發規則,雙網卡才能真正互通。