主要目的是网络加速,因为"伟大"的防火墙要对所有的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
分享到:
相关推荐
/etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。 比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放...
设置 Ubuntu DNS 缓存 Linux 服务器应用 - 电脑资料设置 Ubuntu DNS 缓存 本文档主要介绍了如何在 Ubuntu 系统中设置 DNS 缓存服务器,提高 DNS 解析速度。下面是该文档中的知识点总结: 1. 安装 dnsmasq 软件包:...
标题中的问题涉及到Ubuntu系统下 `/etc/resolv.conf` 文件在重启后被自动恢复原状的情况。这个文件在Linux系统中是用于配置DNS(域名系统)服务器的,它包含了系统进行域名解析所需的DNS服务器地址。当网络接口配置...
《Ubuntu Linux从入门到精通》这本书是为那些对Linux系统特别是Ubuntu版本感兴趣的初学者准备的。Ubuntu Linux是一款基于Debian的开源操作系统,以其用户友好、稳定性强和丰富的应用软件库而受到全球用户的喜爱。它...
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/ ...
总结,配置Linux下的DNS服务涉及多个步骤,理解其工作原理和配置文件至关重要。通过合理配置,不仅可以为本地网络提供高效、安全的域名解析服务,还可以作为权威DNS服务器为其他网络提供服务。在实践中,应不断学习...
在Linux操作系统中,DNS(Domain Name System)服务器是网络服务的核心组件之一,它负责将人类可读的域名转换为IP地址,以便网络通信。这里我们关注的是基于Linux平台的DNS服务器,具体来说,我们将探讨使用BIND...
在Ubuntu操作系统中搭建DNS服务器是一项基础且重要的网络管理任务,它可以帮助我们管理和解析域名,确保网络服务的稳定运行。本文将详细介绍如何在Ubuntu系统上设置DNS服务器,主要涉及DNS服务器软件 Bind9 的安装与...
### Ubuntu Linux 网络设置详解 Ubuntu Linux作为一款广泛使用的开源操作系统,在网络配置方面提供了丰富的功能和选项,本文将详细介绍几种常见的网络设置方法:网卡通过DHCP自动获取IP地址、网卡静态分配IP地址、...
Ubuntu Linux 是一款基于Debian的开源操作系统,深受开发者和服务器管理员的喜爱。它的用户界面友好,且提供了丰富的软件包,使其成为个人电脑、服务器甚至嵌入式设备的理想选择。Ubuntu 的发行版按照每六个月发布一...
是一款强大的Linux hosts管理工具,它的存在极大地简化了用户在不同网络环境下的域名解析工作,无论是开发调试还是日常使用,都能提供极大的便利。通过熟练掌握其使用方法,用户可以更高效地控制网络流量,提高工作...
在Ubuntu操作系统中,DisplayLink技术是一种通过USB接口连接显示器,实现VGA或HDMI显示输出的方式。DisplayLink驱动程序使得用户能够轻松扩展或镜像他们的桌面到额外的显示器,而无需依赖于内置的显卡接口。这篇教程...
本文档主要介绍 Ubuntu Linux 操作系统与实验教程概述,涵盖了虚拟机的安装、配置、网络类型、快照等知识点,同时也简单介绍了 Linux 操作系统的基本概念和 dpkg 软件包管理器。 一、虚拟机安装 虚拟机可以在一台...
Ubuntu Linux 从初学到精通
本文档是本人大学所撰写的一次作业,涉及了WEB/DHCP/DNS server 的搭建,平台为Ubuntu16.04LS ,内容丰富,注释详细,欢迎大家参考
在Linux系统中,DNS(Domain Name System)服务器是网络服务中的关键组件,它负责将域名转换为IP地址,使得用户可以方便地通过域名访问互联网资源。这篇教程将深入讲解如何在Linux环境下设置DNS服务器,包括基本概念...
本教程集合旨在帮助初学者快速入门Ubuntu Linux,并逐步掌握其核心概念和常用命令,实现从新手到精通的过渡。 一、Ubuntu Linux基础知识 Ubuntu Linux采用GNOME桌面环境,提供直观的图形化界面。其系统更新频繁,每...
4. `nslookup`或`dig`:查询域名系统(DNS)记录。 5. `netstat`:显示网络连接、路由表、网络接口统计等信息。 六、系统信息和管理 1. `top`或`htop`:实时显示系统资源使用情况。 2. `df`:查看磁盘空间使用情况...
学习如何手动配置网络,包括静态IP地址分配和DNS设置,对于特定环境下的使用非常实用。 8. **开发环境**: 对于开发人员,Ubuntu提供了丰富的开源工具和开发环境。例如,可以使用集成开发环境如Eclipse或Visual ...
在本文中,我们将深入探讨如何在Ubuntu 12.10上配置DNS服务器,使用BIND (Berkeley Internet Name Domain),这是最广泛使用的DNS协议实现。BIND不仅提供了域名服务器(named)的功能,还包含了DNS解析库函数和用于...