【ubuntu】静态ip+dns缓存解决网速过慢问题

因为用windows主机做的nat,不知道为何linux下的网速比windows下慢很多,差了些资料,对网速有些缓解,但还是和windos有点差距,不知道何原因。

1.静态ip:

step1:设定IP

sudo gedit  /etc/network/interfaces

 

文件内容修改为:

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.0.2

gateway 192.168.0.1

netmask 255.255.255.0

network 192.168.0.0

broadcast 192.168.0.255 

 

然后重启networking

sudo /etc/init.d/networking restart

 

step2:设置DNS

sudo gedit /etc/resolv.conf

 

文件内容修改为:

# Generated by NetworkManager

domain localdomain

search localdomain

nameserver 127.0.0.1 #dns缓存

nameserver 192.168.0.1  #若不加youku貌似看不了。

 

不需要重启操作,这是修改后马上生效的

输入任意网址进行测试,如果连接成功即设置静态IP成功

 

2.解决ping过慢的问题。 

 

sudo /etc/init.d/avahi-daemon stop 

 

3.dns缓存

安装sudo apt-get install pdnsd

安装完以后自动进入配置界面,选择manual手工配置,退出配置界面

修改pdnsd

sudo gedit /etc/default/pdnsd

START_DAEMON=no改成START_DAEMON=yes,这个选项允许pdnsd后台运行

修改pdnsd.conf

sudo gedit /etc/pdnsd.conf

perm_cache=10240;

我设置的10240,表示pdnsd用10m空间来缓存dns数据

min_ttl=3d;

这个表示最少缓存3天可以改 1w表示1周 1s表示1秒 1m表示1分钟 1h1小时

将第一个

server {

xxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxxxx

}

改成

server {

label="i.root.servers.net";

ip=192.36.148.17;

}

其中label可以自己设置,也可以不要,

ip就是pdnsd使用的dns

 

sudo gedit /etc/resolv.conf

nameserver 全部删除只留一个设置成127.0.0.1

配置完了重启,pdnsd就自动运行了,以后dns请求会优先到缓存里面找

 

启动pdnsd

sudo /etc/init.d/pdnsd start

 

简单测试

dig yahoo.com | grep time

 

第一次结果显示:;; Query time: 11 msec

第二次结果显示:;; Query time: 0 msec

第三次结果显示:;; Query time: 0 msec

至此,我们的本地DNS代理服务器已经搭建成功。当然,这并没有意味着网速会立马得到提升。但是,当Firefox第二次访问同一个域名下的页面 时,Looking up xxxx.com.... 或者 Connecting to xxxx.com...的时间已经几乎为0。现在我们的Ubuntu的上网速度已经和Windows下相当了。

 

4.另外有个问题,配置静态ip后右上角的网路图标会消失,有时候要连vpn,会比较麻烦,解决办法如下:

 

sudo gedit /etc/NetworkManager/nm-system-settings.conf

把 false 改成 true 保存 退出

sudo service network-manager restart

 

 

posted @ 2011-01-08 20:28  Vincent_Xue  阅读(1415)  评论(0编辑  收藏  举报