学校使用的是电信运营的宽带网络。
虽然速度很快,开放公网 IP,不封 80 端口,但是访问网页方面存在着一点问题。
大概是学校为了解决选课困难,以及节约公网带宽开支,将 PPPoE 得到的 DNS 改为了自建 DNS 。
使用学校自建DNS时,解析校内网站会得到内网IP。而使用公共 DNS ( 如 114DNS )时,解析得到的是公网 IP 。
但是,在寝室宽带环境下使用公共 DNS 解析得到的公网 IP 并打不开学校的网站。
从 traceroute 的结果看,应该是在最后一跳的路由被 null 了。
从原理上看,解决访问故障的最简单方法是将 DNS 换为校园内网 DNS,但是谁知道这个 DNS 上有没有做监控呢(
于是还是自建 DNS 吧,默认上级 DNS 使用 ChinaDNS,加载额外的配置限定学校域名走内网 DNS
配置文件如下(此处 192.168.1.1 为 ChinaDNS 服务器):
cat resolv.conf
nameserver 192.168.1.1
cat dnsmasq.conf
conf-dir=/etc/dnsmasq.d
cat /etc/dnsmasq.d/school.conf
server=/.xxx.edu.cn/10.1.89.98#53
server=/.jwc.xxx.edu.cn/10.1.89.98#53
然后重启下 dnsmasq 服务
/etc/init.d/dnsmasq restart
完工~