言成言成啊 | Kit Chen's Blog

Windows与Linux配置DNS

发布于2024-12-08 00:40:25,更新于2024-12-12 16:15:58,标签:devops  文章会持续修订,转载请注明来源地址:https://meethigher.top/blog

DNS服务的主要作用是将域名解析为对应的IP地址。但是很多时候,域名的地址变动时,有些DNS更新的没那么及时,导致解析结果不正确,所以此时需要我们自己手动更换DNS服务。

本文基于以下操作系统

  • Windows11
  • CentOS7

DNS的默认端口是53,我们在配置DNS时,如果没有单独考虑DNS,就是使用了默认的53端口。

域名解析通过UDP,区域传输通过TCP。所以网络策略需要开通TCP和UDP

一、配置DNS

1.1 Windows

对于Windows配置DNS,就相对简单了,直接控制面板\网络和 Internet\网络和共享中心,选择网络后左键,选择属性,进入Internet协议版本4(TCP/IPv4),修改DNS服务器地址即可。

常见的DNS地址为114.114.114.114,其中还有阿里DNS、腾讯DNS等,这个要根据实际情况来选择。比如阿里DNS,可以直接访问阿里云网站运维检测平台,选择一个解析域名最快的DNS。

1.2 Linux

修改DNS有两种方式

  1. /etc/resolv.conf
    • 说明1:该文件是 DNS 配置的最终生效文件,一经修改直接生效,不需要其他比如重启的操作。
    • 说明2:该文件会被网络管理服务动态生成,原配置会被覆盖。
  2. /etc/sysconfig/network-scripts/网卡配置文件
    • 说明1:一台机器存在多个网卡。我们可以通过网卡命令,来定位其配置文件。比如ip addr查询到存在两个网卡loens33,在CentOS7中,对应的网卡配置文件分别为ifcfg-loifcfg-ens33
    • 说明2:该文件内部,若指定了DNS服务,在配置更新时,会自动更新到/etc/resolv.conf

我们可以通过第2种方式进行DNS的配置。添加

1
2
DNS1="114.114.114.114"
DNS2="202.96.128.86"

然后重启网络服务

1
systemctl restart network

此时查看/etc/resolv.conf发现已经被覆盖了。

二、解析域名

2.1 Windows

Windows支持两种方式

  • ping
  • nslookup
  • curl
    • 说明:若目标方是HTTP服务,可以使用该方式curl -v http://domain
1
2
3
4
# 可以知道域名解析后的IP地址,但无法知道使用哪个DNS服务进行的解析
ping meethigher.top
# 可以知道域名解析后的IP地址,也能知道使用的DNS服务
nslookup meethigher.top

ping命令在Windows中是默认开启的。

若nslookup命令跟telnet命令一样不存在,那就是需要手动开启的。直接控制面板\程序,选择启用或关闭Windows功能,找相关的DNS即可。一般默认是存在的。

2.2 Linux

Linux也支持两种方式

  • ping
  • nslookup
  • curl
    • 说明:若目标方是HTTP服务,可以使用该方式curl -v http://domain

使用方式与Windows一致,此处不多赘述。

ping命令是Linux自带的,但是nslookup是需要安装的。

在CentOS7中,执行如下命令即可。

1
sudo yum install -y bind-util

三、暴力大法-写死域名对应的IP地址

这是一种不值得推荐的做法,而且后期也经常需要人工维护。

但不得不承认,在某些有网络限制的应用场景中,是有其存在价值的。这也算是存在即合理的一种论据了吧。

3.1 Windows

以管理员模式编辑C:\Windows\System32\drivers\etc\hosts文件,按照如下格式添加域名对应的IP地址

1
127.0.0.1 meethigher.top

一旦写入,立即生效。

3.2 Linux

以管理员模式编辑/etc/hosts文件,按照如下格式添加域名对应的IP地址

1
127.0.0.1 meethigher.top

一旦写入,立即生效。

发布:2024-12-08 00:40:25
修改:2024-12-12 16:15:58
链接:https://meethigher.top/blog/2024/specifying-dns/
标签:devops 
付款码 打赏 分享
Shift+Ctrl+1 可控制工具栏