下午三点十七分,公司隔壁工位的网经网页小王又喊了一声“网又断了”。这已经是常打今天第五次。我瞥了一眼他的不开屏幕,浏览器左下角那个转圈的公司菊花图标已经转了快两分钟,最后跳出来一行字:无法访问此网站。网经网页
公司网络打不开网页这件事,常打跟天气一样难以预测。不开有时候是公司全员中招,整个办公室齐刷刷盯着白屏发呆,网经网页像被集体施了定身术;有时候只坑特定几个人,常打你这边刷淘宝飞起,不开他那边连公司官网都打不开。公司最气人的网经网页是,你找IT报障,常打人家远程一看,说“我这边一切正常啊”。
这种“薛定谔的网络”背后,十有八九是DNS解析在作怪。公司内部一般会搭自己的DNS服务器,用来解析内网域名和做上网行为管理。但这台服务器一旦负载过高,或者缓存表被塞满,就会开始“挑人应答”——谁的请求先到先处理,后面的直接丢弃。你刷新十次能成功一次,就算运气好。
还有一种更隐蔽的情况,跟代理服务器有关。很多公司为了安全,所有外网流量都要走一道代理。代理服务器如果连接数打满,或者某个人的下载任务占满了带宽,其他人发出去的HTTP请求就会排在队列里慢慢等。表现就是:微信能发消息(走的是独立通道),邮件客户端能收信(走的是专用协议),唯独浏览器里的网页死活刷不出来。
上周五下午我就碰到过一次。整个技术部十来个人,网页集体瘫痪,但内网系统、打印机、ERP全正常。排查了半天,最后发现是某个同事在后台跑了个数据同步脚本,把出口带宽吃了个精光。那台代理服务器倒是没挂,但所有网页请求都在排队,超时时间一到就报错。你说气不气人?
碰上这种事,最直接的土办法是改DNS。把网卡里的自动获取改成手动,填上8.8.8.8或者114.114.114.114,很多时候立竿见影。但公司网络管理员一般不让这么干,因为绕过内部DNS等于绕过了上网审计。要是被查到,轻则口头警告,重则扣绩效。
再一个办法是清缓存。浏览器里的DNS缓存、系统里的DNS缓存,都清了再刷新。Windows下在命令行敲ipconfig /flushdns,Mac下用sudo killall -HUP mDNSResponder。这招对那种“只有你一个人打不开网页”的情况特别管用。有时候就是缓存里存了一条坏记录,死活指向一个已经不存在的IP地址。
最让人头疼的是那种间歇性故障。你刚报修完,网络自己恢复了,等IT的人一走,又断了。反复几次,连IT都开始怀疑你是不是在故意折腾他。这种时候,我建议自己动手抓个包看看。Wireshark打开,过滤一下DNS和HTTP的流量,看看到底是解析失败还是连接被重置。我之前就发现过一次,某个安全软件后台在偷偷拦截特定域名的请求,卸载之后一切恢复正常。
说到底,公司网络打不开网页,百分之八十是DNS、代理、带宽这三件事里的某一环出了问题。剩下百分之二十,可能是路由器老化、交换机端口故障、甚至光猫过热。你要是等IT来修,他们通常先重启路由,不行就重启交换机,再不行就报运营商。一套流程走下来,半天过去了。
所以我的建议是,先自己判断一下:是所有人都断还是只有你断?是所有网页都打不开还是只有个别网站打不开?是重启一下电脑就能好还是一直好不了?这几个问题能帮你快速缩小范围。实在不行,用手机开个热点顶着,先把手里要紧的活儿干完再说。毕竟公司网络这东西,你越急它越跟你作对,心态放平,反而容易等到它自己恢复的那一刻。