Ubuntu10.10下如何对网站URL的DNS进行解析加速?

本文介绍的是Ubuntu 10.10下网站URL的DNS解析加速,其实很简单,就是dnsmasq。

但是默认Ubuntu10.10livecdi386只是装了-base,dnsmasq程序本身没装。

感觉用了之后,url网址翻译成ipv4地址的速度确实几乎看不到提示文字了。

(现代linux浏览器firefox3.6.x下边提示条,在dns解析的时候,如果解析时间过长,能看到firefox现在在干什么,经常pending在dns解析那步,有时等上超过1秒,每个页面超过一秒,特别是现代的一些网页站点,那些网页都是多个页面内容拼合的,dns解析慢,整个网页装载都慢。一个慢1秒,这一个页面。。。等半天。)

使用这个小东西网页装载速度,确实提升了。

该工具原理其实很简单,大概就是,正常每次我找一个url地址,要向dns服务器发一份申请,说“请您告诉我,去往某某站点,他的ipv4地址是什么?”之后,dns服务把url地址翻译一下,变成ip地址,回复给请求的电脑,说你要的那个某某点com,实际的ip世界中,地址是某某数字。这下电脑知道了,开始按照数字ip地址,向目的地发送真实的数据。

一切都在极快的若干ms内完成。

但是现在似乎没那么快了。所以要加速。把请求dns,翻译,这件事,尽力搬到本地电脑来做。

只要dns翻译过的网站,我自己本地电脑也缓存一份翻译结果,基本以后再去往同样的网站,就不再频繁请求dns服务器了。达到了加速的目的。

dnsmasq安装方法。

新立德,搜索这个包的名字,超小的程序,之后,标记安装,应用之。完事。

之后。配置。需要较高权限修改配置文件。我是上来先开sudonautilus,root权限文件浏览器。之后鼠标右键点任何想编辑的文件,打开就能root权限编辑了,很方便。

***个是/etc/dnsmasq.conf

这一行本来是注释掉的,行前头有井号#,把井号删除。改成这个就完了,保存。

 

  1. listen-address=127.0.0.1 

 

然后,第二文件,

 

  1. /etc/dhcp3/dhclient.conf 

 

这一行,prepend行默认就有,但是也是行开头有井号,把井号去了,参数可能不是127.0.0.1,改成127.0.0.1表示我自己本地主机兼职dns服务器。

 

  1. prependdomain-name-servers127.0.0.1,1.2.3.4; 

 

完了保存。(注意,1.2.3.4这里替换成您自己认为好用的,真正在线的公网dns服务器ipv4地址,***写第2个,如果不写第2个,那么第二dns服务器解析选择可能就是您的网关路由器,但是您网关可能没有dns解析能力,那这就会带来问题。)

然后,第三个/etc/resolv.conf

因为我北京新联通adsl的。所以这样,

默认adsl自动dhcp,分你2dns服务器。

把那2个dns服务器ip地址记下,nameserver后边的ipv4地址就是。

写成半角逗号分隔,比如127.0.0.1,1.2.3.4,5.6.7.8

然后,右键点击gnome面板上的网络管理小程序,就是network-manager0.8.1的applet在任务栏上的那个网络状态的图标。默认Ubuntu有上下2个面板,应该是上边那个面板,和输入法,声音,时间在一起。

(不同系统不一样,不要钻牛角尖。)

编辑dsl连接,因为我用这个起adsl,所以编辑它。

在dsl选项卡,自己常用的adsl连接上,选择编辑,ipv4设置选项卡,把自动pppoe,改成自动pppoe仅地址,地下dns,那里,把刚才记下的2dns服务器,isp分你的,或者你自己喜欢的,写上,格式是127.0.0.1,1.2.3.4,5.6.7.8中间半角逗号分开。

完了。

resolv.conf这个文件的***行,如果有search字样的行,而您有不依赖您的网关作dns服务器,那么可删了,完了插入***行一行空白行,写nameserver127.0.0.1

完了保存。

然后sudo/etc/init.d/dnsmasqrestart

然后。

上网吧,一下就快了。

其他验证方法

可以用nslookup,看127.0.0.1是不是***dns解析服务器,nslookup,进入其模式,输入server看当前dns***服务器,输入网站url地址,前边不加协议,比如http://字样不要写,看dns翻译结果,退出nslookup模式用exit。

或者,dig某某.com,比如digUbuntu.com也是不要加http://之类协议符号,多试几次,看时间msec那里,自然就知道效果了。

经常有个问题,就是dhclient3和network-manager都干涉resolv.conf冲突不?

这个就是,你看我dhcp3的client的配置,127.0.0.1配置成prepend的***个,而在network-manager的applet里,管理连接,我也把dsl的dns配置127.0.0.1作为***个。

因为我是每次进系统,自己手动起adsl,所以进Ubuntu10.10桌面后,系统先靠dhcp3生成一个resolv.conf,里边是dnsserver(nameserver)以127.0.0.1(dnsmasq)为优先,本地没有缓存条目,才以公网dns服务器(ip地址1.2.3.4)解析为第二选择;而当我起adsl以后,adsl连接本身也有dns配置,会覆盖resolv.conf,但是因为我的dsl网络连接配置的也是127.0.0.1优先,公网dns服务器1.2.3.4次优选择。

所以无论我起不起adsl,都不会因为dns解析,影响我上网,都不担心我找不到dns服务器。除非我没有公网连接了,那单说。

以上。

那么自然有人就会想到,这样是不是可以有一种进阶考虑。

就是,有些dns服务器速度不太快,但是返回的效果比较好,现在有了dnsmasq这个东西,是不是说我可以切换到那些翻译效果好的但是速度偏慢的dns服务器,那么就去试试嘛!

总结:

【编辑推荐】

原文链接:https://www.51cto.com/article/288691.html

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/17877

(0)
上一篇 2023年5月5日
下一篇 2023年5月5日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml