主要目的是网络加速,因为"伟大"的防火墙要对所有的dns查询进行监控检查过滤丢弃...必然导致缓慢的dns查询... 尤其是国外的网站...慢死...
思路如下
1.通过tcpdump命令抓取所有dns查询的53端口udp的数据包
sudo tcpdump -lvi any 'udp port 53' |tee dns-record.log
-lvi中 -l对终端更友好 -v是详细的包信息 -i是网卡 any代表所有的网卡数据包
'udp port 53'是表达式代表抓取udp包仅仅包括53端口,dns查询的默认端口
当然你要刷新页面才会出现dns查询的udp包
2.分析过滤具体的dns记录
grep ' A ' dns-record.log |sed -e's/.\+\/[0-9] //g' -e's/\. .*A/ /g' |awk '{print $2" "$1" #tcpdump-hosts"}'
其中' A '代表过来ipv4的dns查询结果 假如你是ivp6环境就要改成' AAAA '
#tcpdump-hosts是为了方便修改删除添加的注释,下面会用到
可以把tcpdump的dns记录单独保存下来:
grep ' A ' dns-record.log |sed -e's/.\+\/[0-9] //g' -e's/\. .*A/ /g' |awk '{print $2" "$1" #tcpdump-hosts"}' |sort |uniq |tee -a mydns-hosts
sort 和uniq是排序去掉重复的dns记录
3.最后把mydns-hosts记录导入到/etc/hosts
cat mydns-hosts |sudo tee -a /etc/hosts
假如你想删除tcpdump查询到的dns非常简单
sudo sed -i '/#tcpdump-hosts/ d' /etc/hosts
这就就不会影响到你自己以前添加的hosts了
重要说明:/etc/hosts文件中有多个重复多个host的时候 前面的优先级高,后面添加了也是白加...要删除前面的或者添加到/etc/hosts的第一行
例如
sudo sed -i '1 i 192.30.252.128 github.com' /etc/hosts
网站的域名和ip不是永远不变的,dns改变的时候你需要删除hosts的dns如下快速删除:
比如删除github.com
sudo sed -i '/ github.com/ d' /etc/hosts
当然之后你要清除浏览器的dns缓存,ubuntu linux上直接重启网络即可sudo service network-manager restart
或许你需要配合dnscrypt,把dns结果都加入hosts将大大改善dnscrypt的压力和速度
后记,假如你是android手机,也是可以这样来做的,请自行谷歌andorid tcpdump安装方法.之后:
电脑上执行
echo "su -c 'tcpdump -i any -p -s 0 -w /sdcard/udp-capture.pcap udp port 5'" >> caputure.sh
adb push caputure.sh /sdcard/
手机终端执行
cd /sdcard/
sh caputure.sh
运行了几个小时或者一天后把udp-capture.pcap文件复制到电脑
电脑上执行
adb pull /sdcard/udp-capture.pcap .
tcpdump -i any -lvvv -r udp-capture.pcap |tee andorid-dns.log
稍等一会就能看到当天抓取的的udp包具体信息
后面就是过滤获取具体的dns结果和上面的类似了....
参考:
http://unix.stackexchange.com/questions/27246/how-to-gather-dns-a-record-requests
http://www.kandroid.org/online-pdk/guide/tcpdump.html#other
分享到:
相关推荐
第一步、执行su,输入root密码进入特权模式。 第二步、添加DNS服务器IP。 第三步、重启网络。 第四步、验证。
设置UbuntuDNS缓存linux服务器应用-电脑资料.pdf
1、vlc播放rtp说明: ...2、linux vlc安装: sudo apt-get install vlc dkpg默认保存路径:/var/cache/apt/archives 安装包下载路径: http://cn.archive.ubuntu.com/ubuntu/pool/universe/libc/libcddb/ ...
本文档是本人大学所撰写的一次作业,涉及了WEB/DHCP/DNS server 的搭建,平台为Ubuntu16.04LS ,内容丰富,注释详细,欢迎大家参考
在ubuntu linux下实现的FTP文件上传,程序自动监听目录下是否有图片文件,有文件则自动通过FTP上传到服务器端,同时删除目录下的文件,实现了批量文件上传,自动重命名文件,程序经测试,运行稳定。
ubuntu linux下安装apache。
1.需要创建个件/etc/resolvconf/resolv.conf.d/tail 2.在该件中写需要的dns服务器,格式与/etc/resolv.conf相
ubuntu 下displayLink usb转VGA/hdmi驱动,按装命令,在ubuntu 17 通过实机测试
linux下HDF4/HDF5对NetCDF的支持所需要的文件包括:netcdf4.5、HDF5 1.8.9、zlib 1.2.5、curl 7.18.0、HDF-4.2、libjpeg-6b等。
在ubuntu/linux中写一个新的操作系统接口:模仿Windows 命令接口 为Unix/Linux操作系统建立兼容的Windows/DOS命令接口,文件与目录命令; 具体命令:DIR(my_ls), RD(my_rd),CD,MD(my_md), DEL,MOVE(my_move),REN(my_...
Ubuntu Linux操作系统入门指南,使用于初学者了解并入门ubuntu系统的使用
书名:A practical guide to ubuntu linux 作者:Mark S. Sobell 带书签 高清版
Ubuntu Linux从入门到精通的教程
Ubuntu Linux 从入门到精通
ubuntu linux 网络设置详解 方式1:网卡通过DHCP自动获取IP地址 方式2:网卡静态分配IP地址 方式3:PPPoE宽带拨号配置 方式4:通过无线局域网接入互联网
Ubuntu Linux 从初学到精通
本文件是在ubuntu下配置vim,变成C/C++集成开发环境,实现代码自动补全,函数参数提示,代码跳转,文件列表和函数项显示等功能,在ubuntu12.04 和ubuntu14.04中测试通过,只需执行vim.sh脚本即可,注意脚本中的vim73...
linux/麒麟/ubuntu 下qt4.8.7安装包
《Ubuntu_Linux从入门到精通》
Ubuntu_Linux入门到精通.全面介绍了Ubuntu Linux的相关知识,内 容详实,论述清晰。主要内容包括Ubuntu介绍、文件系统管理、进程管理、压缩与查询系统、Shell应用、TCP/IP基础、网络管理、网络硬盘以及加密安全通信...