systemd-nspawn 컨테이너를 구문 분석하는 방법은 무엇입니까?

systemd-nspawn 컨테이너를 구문 분석하는 방법은 무엇입니까?

nspawn 컨테이너가 있습니다.

root@nomad-02:~# machinectl list
MACHINE CLASS     SERVICE        OS     VERSION ADDRESSES
debian  container systemd-nspawn debian 11      192.168.88.171…

1 machines listed.

systemd-resolved.service호스트(컨테이너에서도)에서 시작합니다.

root@nomad-02:~# systemctl status systemd-resolved.service
● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2022-01-25 22:16:34 UTC; 12h ago
       Docs: man:systemd-resolved.service(8)
             man:org.freedesktop.resolve1(5)
             https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 232128 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 1132)
     Memory: 5.3M
        CPU: 153ms
     CGroup: /system.slice/systemd-resolved.service
             └─232128 /lib/systemd/systemd-resolved

Jan 25 22:16:34 nomad-02 systemd[1]: Starting Network Name Resolution...
Jan 25 22:16:34 nomad-02 systemd-resolved[232128]: Positive Trust Anchors:
Jan 25 22:16:34 nomad-02 systemd-resolved[232128]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d
Jan 25 22:16:34 nomad-02 systemd-resolved[232128]: Negative trust anchors: 10.in-addr.arpa 16.172.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.>
Jan 25 22:16:34 nomad-02 systemd-resolved[232128]: Using system hostname 'nomad-02'.
Jan 25 22:16:34 nomad-02 systemd[1]: Started Network Name Resolution.

컨테이너에는 vnet이 있습니다.

root@nomad-02:~# resolvectl status
Global
         Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
  resolv.conf mode: foreign

...

Link 439 (ve-debian)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
     Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported

호스트 이름을 사용하여 호스트 내부에서 컨테이너에 액세스할 수 있는지 알고 싶습니다.

내가 시도한 것은 다음과 같습니다.

dig @127.0.0.53 debian

이것은 작동하지 않습니다.

이 작업을 수행하는 방법에 대한 문서를 찾을 수 없습니다. 가능합니까?

미리 감사드립니다.

답변1

NSS(Name Service Switch, 참조 man 5 nss) 모듈이 필요합니다."내 기계/etc/nsswitch.conf"다음과 같이 설치하고 활성화합니다( 참조 man 8 nss-mymachines).

hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns

libnss-mymachines예를 들어 Debian에서는 이 패키지가 필요합니다.

관련 정보