浅谈micro中的默认服务发现:mdns

mDNS是零配置服务,用于解析本地网络中的主机名。

在micro框架中,默认使用mDNS进行服务发现。

mDNS使用UDP多播在2 2 4 .0.0.2 5 1 端口进行通信。

microserver通过grpcServer使用mDNS进行服务注册和发现。

配置mDNS服务,注册实例,设置端口,启动服务。

mDNS用于简化本地网络中服务的发现和调用。

Linux如何修改resolv.conf文件配置DNS

直接编辑/etc/resolv.conf仅临时生效,重启即失效。

NetworkManager系统: 用nmcli connection modify "连接名" ipv4 .dns "8 .8 .8 .8 1 .1 .1 .1 "命令设置,重启保留。

systemd-resolved系统: 编辑/etc/systemd/resolved.conf,设置DNS=8 .8 .8 .8 1 .1 .1 .1 ,重启systemd-resolved服务。

dhclient/dhcpcd系统: 修改/etc/dhcpcd.conf,添加option domain-name-servers 8 .8 .8 .8 , 1 .1 .1 .1 ,重启网络服务。

关键坑: 同时启用NetworkManager和systemd-resolved会冲突。
优先选一个。

实操提醒: 用resolvectl status确认当前DNS状态。

OPNsense-系统配置1(02)

说白了,系统配置基础设置里的常规设置语言选中文,主要是因为用中文截图方便理解。
先说最重要的,主机和域设置时,要注意主机名和域名与DNS域名有区别,别跟RFC1 03 5 规则较真,简单来说就是不用太复杂。
避免用"local"域,因为它专门是给mDNS用的。
mDNS和单播DNS原理类似,但mDNS只在局域网里头管用,主要是找主机名和发布局域网内的服务。
单播DNS就无环境限制,mDNS设置的主机名和域名类似于Linux的hostname。
mDNS用UDP5 3 5 3 端口,Linux下靠avahi进程,Windows系统用NetBOIS,苹果系统用Bonjour。

我一开始以为mDNS和单播DNS都是一样的,后来发现不对,mDNS只能在局域网里头用。
还有个细节挺关键的,DNS设置中的国际时间标准包括GMT、UTC与夏令时,自从1 9 7 2 年后UTC就成了标准。
北京时间就是CST=UTC+8 (东八区)。

在DNS设置里,配置了两个解析地址:2 2 3 .5 .5 .5 和1 8 0.7 6 .7 6 .7 6 ,分别对应不同的应用网关。
完成本地DNS设置后,用命令查看解析配置文件,你会看到有循环查询、超时时间、重试次数等配置,这些都是为了提高解析效率。
解析顺序是按文件中地址的先后排列,时间间隔是1 秒,如果第一个DNS解析不了,就会从上往下循环请求,每次请求都用独立连接,这样就能避免NAT过程中的误判。

至于网关切换,允许默认网关切换功能,当有多个网关时特别有用。
如果其中一个网关出问题,系统会自动调整默认路由到另一个网关,等故障恢复后,它又会自动切换回来。
网关监控的内容会在后续章节详细讲解。

等等,还有个事,关注、点赞、转发这个,能助你在网络安全之旅更进一步。
资料方面,你可以参考RFC1 03 5 ,还有champyin.com/2 02 0/04 /2 4 /彻底弄懂GMT、UTC、时区和夏令时/和en.wikipedia.org/wiki/List_of_DNS_query_types。