能用于域名解析测试的命令是

能用于域名解析测试的命令是,第1张

以下哪些命令可用作域名解析测试BC

A.ipconfig

B.ping

C.nslookup

D.arp

参考答案:

B C

当浏览器访问某个网站域名或者应用服务通过域名方式访问API接口的时候,需要用IP和port建立TCP连接或者复用底层连接,IP地址的获取依赖对域名的解析,完成解析的角色称为域名解析器(dns resolver)。解析的大致过程就是检查cache是否有该记录,本地hosts文件是否有,都没有命中就查询dns server进行CNAME和A记录的查询。在linux系统下,dns server的IP一般在/etc/resolv.conf文件中。

域名解析常用dig命令,以及在 https://www.whatsmydns.net/ 进行域名解析测试。

考虑到域名IP地址不是经常变动,减少查询dns的冗余,并显著降低高QPS应用服务查询dns的压力(最后一节有benchmark对比),需要对dns信息进行缓存。因为软件应用不同、开发语言不同、操作系统不同,dns resolver的实现和封装也不同,会遇到不同的层面的cache。比如windows的dns resolver会有cache,linux默认不缓存;go语言可以选择cgo或者自己实现的dns resolver;chrome浏览器也会有自己的cache。

dns cache除了好处以外,也带来了其他问题。比如dns cache可能被恶意病毒修改,将真实IP改成钓鱼网站的IP,对用户进行诱导和钓鱼。还有在服务发现的这种特定场景下,dns cache是不被允许的,会出现IP更新不及时导致API流量的损失和错误,例如部署上线或者宕机,相比之下,运维响应的时长会造成更大的损失。但为了解决这个问题,在client和server端中间增加一层代理,dns记录指向这个代理。如图:

代理职责一般有:

代理一般分为:

四层代理对外暴露的IP一般称为虚IP(VIP)

example_test.go

性能对比:

从对比中可看出:go的pure resolver因没有cache和网络不稳定的因素,总耗时较多。而cgo的resolver比较稳定且耗时较低。

linux或类unix系统是没有操作系统级别的dns cache。除非安装了dnsmasq或者

nscd(Name Service Caching Daemon),并开启。

在linux下可以通过命令查看域名,那么具体是怎么操作的呢?下面由我为大家整理了linux下查看域名的命令,希望对大家有所帮助。

1.linux查看域名的命令——ifconfig

Linux查看IP地址的命令--ifconfig

ifconfig命令用于查看和更改网络接口的地址和参数

$ifconfig -a

lo0: flags=849 mtu 8232

inet 127.0.0.1 netmask ff000000

hme0: flags=863 mtu 1500

inet 211.101.149.11 netmask ffffff00 broadcast 211.101.149.255

ether 8:0:20:a7:4d:21

系统会显示网络接口的名称,接口的状态(up or down),

接口的IP地址和掩码等信息

2.扩展:如何更改网络接口的IP地址

#ifconfig hme0 down

#ifconfig hme0 211.101.149.233 netmask 255.255.255.0 up

首先,使用down命令参数把网络接口hme0的服务暂时停止,然后再用Linux查看ip的ifconfig命令给

接口分配新的IP地址和掩码,并启动网络接口服务

也可以通过改变文件/etc/hosts中的IP地址的值并重新启动系统来更改机器的IP地址。

/etc/hosts/: 211.101.149.11 sampdt

定义主机名在/etc/hostname.hme0及IP地址。

更改了网卡/增加了网卡,系统不能自动启动该接口服务,这时需要手动创建网口服务:

#ifconfig hme0 plumb

Linux查看ip即可以为接口le0创建网口服务

相应地,用ifconfig带unplumb参数可以停止服务并关闭网络.

netconfig 用来设置IP地址


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/58505.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-27
下一篇2023-02-27

发表评论

登录后才能评论

评论列表(0条)

    保存