共计 710 个字符,预计需要花费 2 分钟才能阅读完成。
在通过设备 B 开启热点给另一台设备 A 使用时,经常遇到 B 本身能正常访问网络/设备 C,但 A 却打不开 的情况。
按照以下步骤依次排查,基本能定位并以上的问题。
1. 排查A网络
-
A 是否能 ping 通 B。如果 A 和 B 都不通那就别说 C 了
-
A 是否设置网关为 B 的 ip。A 发现 C 和自己不在同一个网段,会将数据包交给网关,如果不设置那么肯定无法通过 B 转发
-
A 是否配置多网卡。如果 A 为多网卡,那么即使 A 和 B 互通,访问 C 可能走其他网卡的默认路由
-
A 网段是否和 C 网段冲突(一般不会)。
2. 排查B配置
目前这种情况,无论 B 是一个什么设备,都需要把他当作路由器来对待。那么它应该具备 ip 转发、nat 伪装、放行转发的能力。
- 检查是否开启转发。
# 查看转发状态(1 为开启,0 为关闭)
sudo sysctl net.ipv4.ip_forward
# 若为 0,临时开启:
sudo sysctl -w net.ipv4.ip_forward=1
- 查看指定网卡是否开启 NAT 伪装
sudo iptables -t nat -L POSTROUTING -n -v
# 指定网口开启nat伪装
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# 所有出口开启nat伪装
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
- 查看是否放行转发
sudo iptables -L FORWARD -n -v --line-numbers
# 指定网口放行转发
sudo iptables -I FORWARD -i eth0 -j ACCEPT
sudo iptables -I FORWARD -o eth0 -j ACCEPT
# 所有出口放行转发
sudo iptables -A FORWARD -j ACCEPT
AD:【腾讯云服务器大降价】2核4G 222元/3年 1核2G 38元/年
正文完