一方能上网,一方不能上网。
1.DNS 服务器有问题,如果直接将位于外网的 DNS 服务器提供给客户端,那么可能存在查询延时+客户端自身的缓存消亡时间问题
2.早些年的 QQ 浏览器竟然内置 DNS 服务器,可以逃脱本地网关的强制方法,拒绝使用 QQ 浏览器
接收信息的速度不同(如微信信息)。
至今不知道为什么,虽然有人专门写了一篇关于微信消息收发的心跳导致的电池省电问题.但我问过同事,他们的 vivo 之类的国产手机同样存在两端接收时间延迟问题.并不像是 google 版本导致的.我的手机应该装的是
weixin.qq.com 直接下载的,依然有这个问题
相同的机场节点,一方能用,一方不能。
openwrt 的解决方案
#强制所有的 DNS 查询使用网关 dnsmasq 提供,任何终端无法使用外部,除非像 QQ 浏览器那种自己内置通道
-A prerouting_rule -s 192.168.0.0/16 -p udp -m udp --dport 53 -j DNAT --to-destination 192.168.8.253
#解决 mtu 导致的网络呑吐,据说非常有用.对当年就是为了解决亚马逊英文站的,是不是用了它很多网站页面都能浏览了,不会因为分包而导致页面无法呈现
-A FORWARD -o pppoe-wan -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
-A FORWARD -i pppoe-wan -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
#用来解决 DSCP 在不同交换设备而导致的流量控制问题
-A PREROUTING -i pppoe-wan -j DSCP --set-dscp 0x00
#qos,用访问目的端口 qos 来解决不同优先级的上行数据,达到网页刷刷刷迎面扑来的感觉.
udp_5000:5500,6060,8088_0x10/0xff
tcp_2099,5222,5223,5060,6060,8088,8393:8400,992,1992,26241_0x10/0xff
udp_53,123_0x20/0xff
tcp_22,23,3389_0x20/0xff
tcp_80,443,1080,1863,8080:8081,12000,14000_0x30/0xff
udp_500,1701,4000:4030,4500,8000:8001,16285_0x30/0xff
tcp_20,21,25,143,465,993,1024:65535_0x40/0xff
udp_1:65535_0x40/0xff