标签归档:DNS

dig获取并批量路由IP地址到指定网关

安装 dig

# Debian/Ubuntu
apt-get install knot-dnsutils
# CentOS/RHEL
dnf install bind-utils

批量进行

下面以 frytea.com 为例,使用 dig 命令获取 frytea.com 的 IP 地址,然后添加路由规则。以下是具体步骤:

  1. 首先使用 dig 获取 IP 地址:

    dig frytea.com +short
  2. 将获取到的每个 IPv4 地址添加路由规则:

    # 假设 dig 获取到的 IP 是 1.2.3.4,则运行:
    ip route add 1.2.3.4/32 via 192.168.25.18

如果你想要一个自动化的脚本来完成这个任务,可以使用以下命令:

for ip in $(dig frytea.com +short | grep -E '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$'); do
    ip route add ${ip}/32 via 192.168.25.18
done

这个命令会:

  1. 使用 dig 获取所有 IP
  2. 使用 grep 过滤出 IPv4 地址
  3. 为每个 IPv4 地址添加路由规则,指向 192.168.25.18

注意:

  • 需要 root 权限执行添加路由的命令
  • 如果路由已经存在,需要先删除旧路由(使用 ip route del 命令)
  • 确保 192.168.25.18 在你的网络中是可达的

常用公共 DNS 服务器

汇总表格

名称 IPv4 IPv6
DNSPod 119.29.29.29 2402:4e00::
AliDNS 223.5.5.5 223.6.6.6 2400:3200::1 2400:3200:baba::1
BaiduDNS 180.76.76.76 2400:da00::6666
360DNS 101.226.4.6 218.30.118.6 123.125.81.6 140.207.198.6
114DNS 114.114.114.114 114.114.115.115
ChinaDNS 1.2.4.8 210.2.4.8 2001:dc7:1000::1
OneDNS 117.50.11.11 117.50.22.22
Hi!XNS DNS 40.73.101.101
TWNIC DNS 101.101.101.101 101.102.103.104 2001:de4::101 2001:de4::102

国内知名公共 DNS 服务器

腾讯 DNS (DNSPod)

由 DNSPod 提供的公共免费 DNS,后来 DNSPod 被腾讯(Tencent)收购,现在属于腾讯公司所有,稳定性和连通性也是不错的,经测试海外也可以使用。 DNSPod 除了 IPv4,现在同时支持 IPv6 DNS 和 DoT/DoH 服务。

类型 地址
IPv4 119.29.29.29
IPv6 2402:4e00::
DoH https://doh.pub/dns-query
DoH (国密 SM2) https://sm2.doh.pub/dns-query
DoT dot.pub

阿里 DNS (Alidns)

这组 DNS 是由阿里巴巴提供的,国内连通性还是不错的,海外部分地区连通性不是特别好,具体可以测试一下。 阿里 DNS 同时提供了 IPv4/IPv6 DNS 和 DoT/DoH 服务。

类型 地址
IPv4 223.5.5.5 223.6.6.6
IPv6 2400:3200::1 2400:3200:baba::1
DoH https://dns.alidns.com/dns-query
DoT dns.alidns.com

百度 DNS

中国最大的搜索引擎百度提供的公共 DNS,经测试海外连通性也是不错的,暂时百度只提供了一组 IPv4 和 IPv6 DNS 地址。

类型 地址
IPv4 180.76.76.76
IPv6 2400:da00::6666

360 安全 DNS

360 提供的 DNS 服务,只提供了 IPv4 和 DoT/DoH 服务。

针对中国电信/铁通/移动的 IPv4:

类型 地址
IPv4(电信/铁通/移动) 101.226.4.6 218.30.118.6
IPv4(联通) 123.125.81.6 140.207.198.6
DoH https://doh.360.cn
DoT dot.360.cn

国内运营商

类型 地址
安徽电信IPv4 61.132.163.68 202.102.213.68
北京电信IPv4 219.141.136.10 219.141.140.10
重庆电信IPv4 61.128.192.68 61.128.128.68
福建电信IPv4 218.85.152.99 218.85.157.99
甘肃电信IPv4 202.100.64.68 61.178.0.93
广东电信IPv4 202.96.128.86 202.96.128.166
202.96.134.133 202.96.128.68
广西电信IPv4 202.103.225.68 202.103.224.68
贵州电信IPv4 202.98.192.67 202.98.198.167
河南电信IPv4 222.88.88.88 222.85.85.85
黑龙江电信IPv4 219.147.198.230 219.147.198.242
湖北电信IPv4 202.103.24.68 202.103.0.68
湖南电信IPv4 222.246.129.80 59.51.78.211
江苏电信IPv4 218.2.2.2 218.4.4.4
61.147.37.1 218.2.135.1
江西电信IPv4 202.101.224.69 202.101.226.68
内蒙古电信IPv4 219.148.162.31 222.74.39.50
山东电信IPv4 219.146.1.66 219.147.1.66
陕西电信IPv4 218.30.19.40 61.134.1.4
上海电信IPv4 202.96.209.133 116.228.111.118
202.96.209.5 180.168.255.118
四川电信IPv4 61.139.2.69 218.6.200.139
天津电信IPv4 219.150.32.132 219.146.0.132
云南电信IPv4 222.172.200.68 61.166.150.123
浙江电信IPv4 202.101.172.35 61.153.177.196
61.153.81.75 60.191.244.5
北京联通IPv4 123.123.123.123 123.123.123.124
202.106.0.20 202.106.195.68
重庆联通IPv4 221.5.203.98 221.7.92.98
广东联通IPv4 210.21.196.6 221.5.88.88
河北联通IPv4 202.99.160.68 202.99.166.4
河南联通IPv4 202.102.224.68 202.102.227.68
黑龙江联通IPv4 202.97.224.69 202.97.224.68
吉林联通IPv4 202.98.0.68 202.98.5.68
江苏联通IPv4 221.6.4.66 221.6.4.67
内蒙古联通IPv4 202.99.224.68 202.99.224.8
山东联通IPv4 202.102.128.68 202.102.152.3
202.102.134.68 202.102.154.3
山西联通IPv4 202.99.192.66 202.99.192.68
陕西联通IPv4 221.11.1.67 221.11.1.68
上海联通IPv4 210.22.70.3 210.22.84.3
四川联通IPv4 119.6.6.6 124.161.87.155
天津联通IPv4 202.99.104.68 202.99.96.68
浙江联通IPv4 221.12.1.227 221.12.33.227
辽宁联通IPv4 202.96.69.38 202.96.64.68
江苏移动IPv4 221.131.143.69 112.4.0.55
安徽移动IPv4 211.138.180.2 211.138.180.3
山东移动IPv4 218.201.96.130 211.137.191.26
IPv6(电信) 240e:4c:4008::1 240e:4c:4808::1
IPv6(联通) 2408:8899::8 2408:8888::8
IPv6(移动) 2409:8088::a 2409:8088::b

114DNS

类型 地址
IPv4 114.114.114.114 114.114.115.115

CNNIC DNS

类型 地址
IPv4 1.2.4.8 210.2.4.8
IPv6 2001:dc7:1000::1

Yeti DNS

Yeti IPv6 Project 是由WIDE、TISF 和 BII 发起的一个只针对 IPv6 的互联网公益 DNS 项目,现阶段主要以 IPv6 服务为主。各公司、学校、组织都可以加入这个项目提供 DNS 服务。

类型 地址
IPv6(北京互联网研究所) 240c:f:1:22::6 240C::6666 240C::6644
南京 240e:eb:8001:e01::53
成都 240e:d9:c200:14c:7472::19e0
广州 2408:8756:f5f:4::6

OneDNS

北京微步在线科技有限公司提供的 DNS 服务,不太了解到底怎么样,大家可以试试看。

类型 地址
IPv4 117.50.11.11 117.50.22.22
纯净版 117.50.10.10/52.80.52.52

Hi!XNS DNS 服务器

嘉兴艾泰德信息技术有限公司提供的 DNS 服务,之前也没有了解过。

类型 地址
IPv4 40.73.101.101

TWNIC DNS Quad 101

类型 地址
IPv4 101.101.101.101 101.102.103.104
IPv6 2001:de4::101 2001:de4::102

国内教育网 DNS 服务器

大学的DNS

类型 地址
北京邮电大学 IPv6 2001:da8:202:10::36 2001:da8:202:10::37
上海交通大学 IPv6 DNS 服务器 2001:da8:8000:1:202:120:2:100 2001:da8:8000:1:202:120:2:101
北京科技大学 2001:da8:208:10::6
中国科技网 2001:cc0:2fff:2::6

Yeti DNS Project 注册的 IPv6 DNS 服务器

类型 地址
中科院网络信息中心 2001:cc0:2fff:1::6666
北京交通大学 2001:da8:205:2060::188
清华大学 2001:da8:ff:305:20c:29ff:fe1f:a92a

清华大学 TUNA 协会 DNS 服务器

据说已经停止对校外用户解析,未验证,可以自己试试看。

类型 地址
IPv4 101.6.6.6
IPv6 2001:da8::666

海外知名公共 DNS 服务器

Google Public DNS

Google 提供的公共免费 DNS,应该是最流行的 公共 DNS 了,不过国内可能无法正常使用,同时提供 IPv4/IPv6/DoT/DoH 服务。

类型 地址
IPv4 8.8.8.8 8.8.4.4
IPv6 2001:4860:4860::8888 2001:4860:4860::8844
DoH https://dns.google/dns-query
DoH(IPv6) https://dns64.dns.google/dns-query
DoT dns.google

Cloudflare DNS

Cloudflare DNS 是 Cloudflare 与 APNIC 联合推出的号称全球最快的 DNS 服务。APNIC 是一个管理亚太与大洋洲地区 IP 地址分配的非盈利性组织,1.1.1.1 归 APNIC 所有,现在交给 Cloudflare 来提供 DNS 服务,同时提供 IPv4/IPv6/DoT/DoH 服务。

类型 地址
IPv4 1.1.1.1 1.0.0.1
IPv6 2606:4700:4700::1111 2606:4700:4700::1001
DoH https://cloudflare-dns.com/dns-query
https://1.1.1.1/dns-query
https://1.0.0.1/dns-query
DoH(IPv6) https://dns64.dns.google/dns-query
DoT 1dot1dot1dot1.cloudflare-dns.com one.one.one.one

Quad9 DNS

IBM 发起的 Quad9 提供的公共免费 DNS 服务,同时包含 IPv4/IPv6/DoT/DoH.

类型 地址
IPv4 9.9.9.9 149.112.112.112
IPv6 2620:fe::fe 2620:fe::9
DoH https://dns.quad9.net/dns-query
DoT dns.quad9.net

DNS.SB

德国的一个公共 DNS 服务商 提供的 DNS 服务器,除了德国之外,还在荷兰/英国/爱沙尼亚/俄罗斯/美国/加拿大/日本/新加坡/印度/韩国/香港/澳大利亚等很多国家和地区有服务器,同时提供 IPv4/IPv6/DoT/DoH 服务。

类型 地址
IPv4 45.11.45.11
IPv6 2a09:: 2a11::
DoH https://doh.dns.sb/dns-query https://doh.sb/dns-query
DoT dot.sb

OpenDNS

OpenDNS 是由美国老牌通信设备商 Cisco 思科 提供的公共 DNS 服务,其中基础版和家庭版提供免费的 IPv4/IPv6/DoH 服务。

类型 地址
IPv4 208.67.222.222 208.67.220.220 208.67.222.220 208.67.220.222
IPv6 2620:119:35::35 2620:119:53::53
DoH https://doh.opendns.com/dns-query

OpenDNS FamilyShield

(OpenDNS 家庭盾版 DNS,应该是有安全+防成人内容的功能)

类型 地址
IPv4 208.67.222.123 208.67.220.123
IPv6 2620:119:35::123 2620:119:53::123
DoH https://doh.familyshield.opendns.com/dns-query

Yandex DNS

Yandex DNS 是俄国最大的搜索引擎 Yandex 提供的 DNS 服务,提供基础版/安全版/家庭版三个版本的 IPv4/IPv6 服务。

  • 基础版(快速可靠)

  • 安全版(病毒和钓鱼防御)

  • 家庭版(拦截成人内容)

类型 地址
基础版IPv4 77.88.8.8 77.88.8.1
基础版IPv6 2a02:6b8::feed:0ff 2a02:6b8:0:1::feed:0ff
安全版IPv4 77.88.8.88 77.88.8.2
安全版IPv6 2a02:6b8::feed:bad 2a02:6b8:0:1::feed:bad
家庭版IPv4 77.88.8.7 77.88.8.3
家庭版IPv6 2a02:6b8::feed:a11 2a02:6b8:0:1::feed:a11

COMODO SecureDNS

COMODO 是美国知名的 IT 安全服务商,这个 DNS 是由 COMODO 提供的安全 DNS.

类型 地址
IPv4 8.26.56.26 8.20.247.20

Neustar UltraDNS

Neustar UltraDNS 是美国信息服务公司 Neustar 提供的公共免费 DNS 服务.

  • 基础版(快速可靠)
  • 安全版(病毒和钓鱼防御)
  • 家庭版(拦截成人内容)
类型 地址
基础版IPv4 64.6.64.6 64.6.65.6
基础版IPv6 2620:74:1b::1:1 2620:74:1c::2:2
安全版IPv4 156.154.70.2 156.154.71.2
安全版IPv6 2610:a1:1018::2 2610:a1:1019::2
家庭版IPv4 156.154.70.3 156.154.71.3
家庭版IPv6 2610:a1:1018::3 2610:a1:1019::3

Level 3 Parent DNS

美国 Level 3 Parent 公司 提供的 DNS 服务器,如果 Windows 升级出现问题,可以使用这个 DNS 服务器。

类型 地址
IPv4 4.2.2.1 4.2.2.2 4.2.2.3 4.2.2.4 4.2.2.5 4.2.2.6

References

Linux 使用 DNSMasq 自建 DNS 服务器

DNS(Domain Name System) 是一个为计算机、服务器或其他任何需要接入互联网或私有网络提供分级域名分发系统(hierarchical and decentralized naming system)。

在内网中又一台服务器提供服务,为了使用使其可以在公共网络中访问到需要为它分配 ip 或者使用端口转发、内网穿透等,但绑定域名后域名解析到公网ip,如果在内网访问的话就写多此一举。因此在内网自建一台 DNS 服务器,使其优先级高于公网域名解析服务器,进而实现内网访问解析为内网 ip 且不影响外网访问的目的。

DNSMasq 主要用来解决内网 DNS 域名缓存、DHCP、网络启动和路由通告功能,本文目的是将 DNSMasq 作为内网 DNS 使用。

  1. 安装 DNSMasq
# Ubuntu/Debian
$ sudo apt update
$ sudo apt install -y dnsmasq

# Centos
$ yum install dnsmasq -y 
$ service dnsmasq start
  1. 修改配置

$ sudo cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak
$ sudo vim /etc/dnsmasq.conf
....
resolv-file=/etc/resolv.conf
strict-order
listen-address=<host-ip>
addn-hosts=/etc/hosts.dnsmasq

修改内容解释:

  • resolv-file:从文件读取 DNSMasq 上游的 DNS 服务器配置。
  • strict-order:resolv-file 文件中如果指定了多个 DNS 服务器,严格安装 DNS 服务器的先后顺序查询域名。
  • listen-address:监听地址,如果你不想所有用户都使用你的DNS服务,可以在listen-address后面加上你指定的IP地址即可。
  • addn-hosts:从文件读取本地 DNS 域名和 IP 的对应关系,格式为 。其实可以把 IP 和域名的对应关系写在 /etc/hosts 文件中,DNSMasq 默认从那里读取,但如果要支持一个域名对应多个 IP,就必须使用 addn-hosts 选项了。

/etc/hosts.dnsmasq 文件内容如下:

$ cat /etc/hosts.dnsmasq
10.0.0.1 blackpiglet.com
10.0.0.2 blackpiglet.com
10.0.0.3 blackpiglet.com

修改完成后重启 DNSMasq

$ sudo systemctl restart dnsmasq.service
  1. 配置Dnsmasq上游DNS服务器

DNSMasq 是从 /etc/resolv.conf 文件中读取上游 DNS 服务器, 编辑 /etc/resolv.conf ,参考如下:

nameserver 223.5.5.5
nameserver 223.4.4.4
  1. 启动Dnsmasq并加入启动项(Centos)
chkconfig dnsmasq on
/etc/init.d/dnsmasq restart
  1. 使用

在需要内网解析的服务器上修改网络设置中的DNS服务器即可。

参考文献