
Azure DNS 프라이빗 영역을 사용하여 DNS 확인을 수행하는 데 도움이 필요합니다. 나는 여기 문서를 따랐습니다.https://docs.microsoft.com/en-us/azure/dns/private-dns-getstarted-cli
비공개 영역 example.local을 생성할 수 있었고 jump.example.local이라는 A 레코드를 생성했습니다. 문서에 나와 있는 대로 Ubuntu 18.04 LTS 2개의 VM을 만들었습니다. 10.0.1.4인 IP 중 하나를 가져와 내 jump.example.local 레코드를 업데이트했습니다.
OS에서 다음 명령줄을 실행하려고 하면 A 레코드에서 결과가 나오지 않습니다.
dig jump.example.local
DNS 확인 구성을 확인하면 다음과 같은 결과가 나타납니다.
systemd-resolve --status
Global
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 2 (eth0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 168.63.129.16
DNS Domain: xqelsdawdufutaole0y2mhw4zb.vx.internal.cloudapp.net
vm의 내 DNS 구성이 지적한 DNS 서버를 발굴에 직접 사용하면 원하는 A 레코드를 찾습니다.
dig @168.63.129.16 jump.example.local
; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> @168.63.129.16 jump.example.local
; (1 server found)
;; global options: +cmd
;; Got answer:
;; WARNING: .local is reserved for Multicast DNS
;; You are currently testing what happens when an mDNS query is leaked to DNS
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62699
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4000
; COOKIE: 4681bec0bce6fa9e (echoed)
;; QUESTION SECTION:
;jump.example.local. IN A
;; ANSWER SECTION:
jump.example.local. 2042 IN A 10.0.1.4
;; Query time: 1 msec
;; SERVER: 168.63.129.16#53(168.63.129.16)
;; WHEN: Mon Aug 27 16:11:54 UTC 2018
;; MSG SIZE rcvd: 76
netplan 내에 구성을 삽입하려는 VM을 재부팅해 보았습니다. 하지만 사용할 DNS 서버를 따라잡지 못하는 것 같습니다.
넷플랜 구성 파일
# /etc/netplan/50-cloud-init.yaml
network:
version: 2
ethernets:
ephemeral:
dhcp4: true
match:
driver: hv_netvsc
name: '!eth0'
optional: true
hotpluggedeth0:
dhcp4: true
match:
driver: hv_netvsc
name: 'eth0'
nameservers:
addresses: [168.63.129.16]
search: [example.local]
ubuntu os는 example.local 영역이 Azure DNS로 전달되어야 함을 포착할 수 없는 것 같습니다.
업데이트 #1
존재하지 않거나 명령줄이 systemd-resolve --status
반환하는 목록의 일부가 아닌 다른 TLD를 사용하는 대신 대신 사용했는데 .xyz
이번에는 아무 문제 없이 작동했습니다. 따라서 example.local
서비스에 의해 시작되는 127.0.0.53:53 DNS 이름 확인자가 아닌 적절한 네임서버에 대해 강제로 검색되도록 하려면 적절한 netplan 구성을 알아내야 할 것 같습니다 systemd-resolve
.
업데이트 #2
여기에 구성 파일이 있습니다 /etc/netplan/50-cloud-init.yaml
.
# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
version: 2
ethernets:
eth0:
dhcp4: true
match:
macaddress: 00:0d:3a:f4:5a:99
set-name: eth0
nameservers:
addresses: [168.63.129.16]
search: [example.local]
파일을 편집하고 명령줄을 적용하면 sudo netplan apply
작동합니다. 재부팅도 시도했는데 구성이 그대로 유지되었습니다. 테스트를 도와주신 @nancy-xiong-msft에게 감사드립니다.
답변1
당신이 그것을 알아 낸 것 같습니다. 또한 Ubuntu LTS 16 및 Ubuntu LTS 18.04를 사용하여 이를 테스트합니다. dig vm01.contoso.local
Ubuntu LTS 18.04에서도 결과가 없는 동일한 시나리오가 발생했습니다. 그러나 Ubuntu LTS 16에서는 작동했습니다. 이는 Ubuntu가 네트워크 인터페이스를 관리하는 방식이 완전히 변경되었기 때문이라고 생각합니다.
또한 netplan 구성에 다음을 추가합니다.
nameservers:
addresses: [168.63.129.16]
search: [contoso.local]
그런 다음 을 실행하십시오 sudo netplan apply
. 이제 작동 중입니다.