Nixos VM에는 dhcpcd를 통해 IPv4 주소가 할당되지 않았습니다.

Nixos VM에는 dhcpcd를 통해 IPv4 주소가 할당되지 않았습니다.

다음 옵션으로 가상 머신 설정을 사용하고 있습니다.

    qemu.networkingOptions = [
                               "-device e1000,netdev=abc,mac=52:55:00:d1:55:02"
                               "-netdev tap,id=abc,ifname=tapB,script=no,downscript=no"
                             ];

그러나 IPv4는 할당되지 않습니다. dhcpcd서비스를 확인 하고 수동으로 실행하면 다음과 같은 결과가 표시됩니다.

dhcpcd -w --config /nix/store/vvcrfgj2ni09gqc9l4rin9aq8asp73k9-dhcpcd.conf
dev: loaded udev
DUID 00:01:00:01:25:dc:a1:45:52:54:00:12:34:56
eth0: IAID 00:d1:55:02
eth0: adding address fe80::5055:ff:fed1:5502
eth0: soliciting a DHCP lease
eth0: soliciting an IPv6 router
eth0: no IPv6 Routers available
timed out
forked to background, child pid 752

매개변수 없이 실행하면 다음과 같이 표시됩니다.

dhcpcd
read_config: fopen `/etc/dhcpcd.conf': No such file or directory
dev: loaded udev
read_config: fopen `/etc/dhcpcd.conf': No such file or directory
DUID 00:01:00:01:25:dc:a1:45:52:54:00:12:34:56
eth0: IAID 00:d1:55:02
eth0: adding address fe80::5055:ff:fed1:5502
eth0: soliciting a DHCP lease
eth0: soliciting an IPv6 router
eth0: probing for an IPv4LL address
eth0: using IPv4LL address 169.254.228.140
eth0: adding route to 169.254.0.0/16
eth0: adding default route
forked to background, child pid 705

IPv4를 배포하도록 Nixos/nix를 구성하는 방법은 무엇입니까?


문제가 있는 구성 파일:

cat /nix/store/vvcrfgj2ni09gqc9l4rin9aq8asp73k9-dhcpcd.conf
# Inform the DHCP server of our hostname for DDNS.
hostname

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes, ntp_servers, interface_mtu

# A ServerID is required by RFC2131.
# Commented out because of many non-compliant DHCP servers in the wild :(
#require dhcp_server_identifier

# A hook script is provided to lookup the hostname if not set by
# the DHCP server, but it should not be run by default.
nohook lookup-hostname

# Ignore peth* devices; on Xen, they're renamed physical
# Ethernet cards used for bridging.  Likewise for vif* and tap*
# (Xen) and virbr* and vnet* (libvirt).
denyinterfaces ve-* vb-* lo peth* vif* tap* tun* virbr* vnet* vboxnet* sit*

# Use the list of allowed interfaces if specified



noarp

답변1

VLAN 또는 가상 네트워크를 정의해야 합니다. virt-manager GUI를 사용하여 작동하는 가상 머신을 생성하고 Qemu 구성을 귀하의 구성과 비교하십시오. 가상 머신이 NAT 호스트가 아닌 실제 네트워크에 있도록 하려면 브리지를 사용하여 네트워크 장치를 지원하십시오.

관련 정보