用djbdns建立dns缓存加速网络连接

  搬到上海工作以后,发觉这边的dns似乎工作不是很稳定,有时候一个域名需要解析几次才可以解析出来,直接后果就是浏览网页的时候经常需要打开几次才成功,搞得很不爽,所以在我的本本上搞一个dnscache来缓存一下,果然爽了很多,方法如下:
  安装在freebsd上实在是太简单的事,不值得多说
  portinstall dns/djbdns
  或者
  cd /usr/ports/dns/djbdns ; make install clean

  搞定以后用rehash更新一下路径缓存
  建立dnscache目录,推荐放在/var下
  mkdir /var/service
  dnscache-conf nobody nobody /var/service/dnscache 127.0.0.1  #nobody是系统账号和组
  在/etc/rc.conf里加入
  svscan_enable="YES"
  最后就可以运行/usr/local/etc/rc.d/svscan.sh启动服务了

  服务启动以后查看一下127.0.0.1是否有53端口在监听,如果有,说明成功了

  接下来就是在/etc/resolv.conf里加入
  nameserver 127.0.0.1
  推荐将127.0.0.1放在其他的nameserver前,这样就优先使用缓存结果

  我的网络设置使用的是DHCP,每次启动以后都会将我的resolv.conf改写掉,搞得我经常要去添加127.0.0.1,所以修改了一下/etc/dhclient.conf,加入
  request subnet-mask,dhcp-lease-time,routers,dhcp-option-overload,dhcp-message-type,dhcp-server-identifier,broadcast-address;
  这样dhclient就不会向DHCP服务器请求domain-name-servers,就不会覆盖我定义好的/etc/resolv.conf

  现在使用感觉良好,一个网站只要打开一次以后,再不会出现解析不出来的问题,而且省略了解析过程以后,打开速度也提高不少。

  另外,djbdns的主页(http://cr.yp.to/djbdns.html)可能由于久不维护,我根据他的文档根本无法成功,所以大家用它作参考的时候最好用google多找点其他的文档对照使用。

(0)

相关推荐

  • 用djbdns建立dns缓存加速网络连接

    搬到上海工作以后,发觉这边的dns似乎工作不是很稳定,有时候一个域名需要解析几次才可以解析出来,直接后果就是浏览网页的时候经常需要打开几次才成功,搞得很不爽,所以在我的本本上搞一个dnscache来缓存一下,果然爽了很多,方法如下: 安装在freebsd上实在是太简单的事,不值得多说 portinstall dns/djbdns 或者 cd /usr/ports/dns/djbdns ; make install clean 搞定以后用rehash更新一下路径缓存 建立dnscache目录,推荐

  • FreeBSD 6.0-RELEASE下建立高速DNS缓存服务器的方法

    前阵子将服务器改成通过ipfilter+ipnat+dhcp--freebsd5.4下ipfilter+ipnat包过滤.转发和DHCP服务器架构笔记,但最近感觉服务器时常会掉线,就在服务器再开了个dns缓存服务,通过缓存希望能缓解一下目前的状况.首先介绍在freebsd上如何建立高速dns缓存服务器,引用freebsd中文手册中的话: 缓存域名服务器是对任何域都不提供权威解析的域名服务器. 它自己简单地完成查询, 并记住这些查询以备后续使用. 要建立这样的服务器, 只需像平时一样配置一个域名服

  • Mysql DNS反向解析导致连接超时过程分析(skip-name-resolve)

    MySQL数据库收到一个网络连接后,首先拿到对方的IP地址,然后对这个IP地址进行反向DNS解析从而得到这个IP地址对应的主机名.用主机名在权限系统里面进行权限判断.反向DNS解析是耗费时间的,有可能让用户感觉起来很慢.甚至有的时候,反向解析出来的主机名并没有指向这个IP地址,这时候就无法连接成功了. 可以在配置文件里面禁止MySQL进行反向DNS解析,只需在my.cnf的[mysqld]段落中加入如下行即可: skip-name-resolve (windows与linux下一样的) 设备在连

  • Redis源码与设计剖析之网络连接库

    目录 Redis 网络连接库分析 1. Redis网络连接库介绍 2. 客户端的创建与释放 2.1 客户端的创建 2.2 客户端的释放 3. 命令接收与命令回复 3.1 命令接收 3.2 命令回复 4. CLIENT命令的实现 Redis 网络连接库分析 1. Redis网络连接库介绍 Redis网络连接库对应的文件是networking.c,这个文件主要负责: 客户端的创建与释放. 命令接收与命令回复. Redis通信协议分析. CLIENT 命令的实现. 2. 客户端的创建与释放 2.1 客

  • 详解VMware虚拟机网络连接模式(NAT,Bridged,Host-only)

    序言 如果你使用VMware安装虚拟机,那么你必定会选择网络连接,那么vmware提供主要的3种网络连接方式,我们该如何抉择呢?他们有什么不同呢?这篇我们就做一个深入. 首先打开虚拟机设置里面的网络适配器,如下图: 网络连接,有此三种类型(我从中文搞成专业的英文,呵呵):NAT,Bridged Adapter ,Host-only Adapter. 那就是这三种模式,决定啦你的虚拟机之间是否可以通信,虚拟机与主机之间是否可以通信,同时也缓解啦IP4的部分短板. vmnet0.vmnet1.vmn

  • VMware网络连接模式(桥接、NAT以及仅主机模式的详细介绍和区别)

    在使用VMware Workstation(以下简称:VMware)创建虚拟机的过程中,配置虚拟机的网络连接是非常重要的一环,当我们为虚拟机配置网络连接时,我们可以看到如下图所示的几种网络连接模式:桥接模式.NAT模式.仅主机模式.自定义网络连接模式.那么这几种网络连接模式都各自有什么主要用途,它们之间又有哪些区别呢? 磨刀不误砍柴工,为了更好地使用虚拟机,了解这几种连接模式的主要用途以及它们之间的区别是非常有必要的.在这里,我们就以下面的网络连接示意图为例来进行相关介绍. 在VMware中,虚

  • VMware WorkStation的三种网络连接方式详解

    一. 首先贴出本人在网络上找到与VMware网络连接相关的知识 安装完虚拟机后,默认安装了两个虚拟网卡,VMnet1和VMnet8,其他的未安装(当然也可以手动安装其他的).其中VMnet1是host网卡,用于host方式连接网络的.VMnet8是NAT网卡,用于NAT方式连接网络的.它们的IP地址是随机生成的,如果要用虚拟机做实验的话,最好将VMnet1到VMnet8的IP地址改掉.习惯上把VMware虚拟网卡使用的网段"固定",使用如下原则:VMnet1对应的网段是192.168.

  • VMware的三种网络连接方式区别

    关于VMware的三种网络连接方式,NAT,Bridged,Host-Only ,在刚接触的时候通常会遇到主机Ping不通虚拟机而虚拟机能Ping得通主机:主机与虚拟机互不相通等等网络问题.本文就这三种连接方式作一一说明,也方便以后翻阅当参考用. 首先,要注意安装完VMware后,控制面板\网络和 Internet\网络连接会多出两块虚拟网卡VMnet1.VMnet2,两个网卡各有用途. 基本拓扑 NAT(网络地址转换) 依靠物理主机的VMnet8网卡上网.虚拟机可以互Ping通,前提是物理主机

  • 详解如何配置 VirtualBox 中的客户机与宿主机之间的网络连接

    当你在 VirtualBox 虚拟机软件 中安装了各种操作系统时,你可能需要实现宿主机与虚拟机之间的相互访问. 在这篇文章中,我们将会以最简单明了的方式来说明如何配置客户机与 Linux 宿主机的网络,以实现两者相互访问或者让客户机连接到外网.(LCTT 译注:客户机指 Oracle VirtualBox 虚拟机软件中安装的操作系统,如本文中用到的 CentOS 7 和 Ubuntu 16.10 .宿主机就是你自己的笔记本电脑或台式机,注意这篇文章中作者的宿主机上安装的操作系统是 Linux M

  • Android图片三级缓存策略(网络、本地、内存缓存)

    一.简介 现在的Android应用程序中,不可避免的都会使用到图片,如果每次加载图片的时候都要从网络重新拉取,这样不但很耗费用户的流量,而且图片加载的也会很慢,用户体验很不好.所以一个应用的图片缓存策略是很重要的.通常情况下,Android应用程序中图片的缓存策略采用"内存-本地-网络"三级缓存策略,首先应用程序访问网络拉取图片,分别将加载的图片保存在本地SD卡中和内存中,当程序再一次需要加载图片的时候,先判断内存中是否有缓存,有则直接从内存中拉取,否则查看本地SD卡中是否有缓存,SD

随机推荐