LXC 컨테이너에 대한 DHCP 설정

LXC 컨테이너에 대한 DHCP 설정

네트워크 액세스가 필요한 여러 lxc 컨테이너가 있습니다. 현재 다음과 같이 관련 구성 파일에서 IP 주소를 수동으로 할당하고 있습니다.

lxc.network.type = veth
lxc.network.flags = up
lxc.network.name = eth0
lxc.network.link = br0 
lxc.network.ipv4 = 192.168.1.6/24                                                              
lxc.network.ipv4.gateway = 192.168.1.1

이는 작동하지만 확장되지 않으며 라우터의 DHCP 할당과 충돌할 수 있습니다. lxc.network.ipv4 라인(온라인의 다른 곳에서 설명한 대로)을 생략하여 라우터에서 dhcp를 사용하려고 시도했는데 컨테이너가 시작되었지만 dhcpcd에서 운영자가 없다고 보고했습니다. lxc-ls --fancy는 또한 내 컨테이너에 IP 주소가 있음을 표시하지 않습니다. 신부가 시작되고 lxc.network.link가 구성 파일에 설정됩니다.

내 컨테이너에서 DHCP를 어떻게 사용하나요? 라우터에서 DHCP를 사용할 수 있습니까? 아니면 호스트 컴퓨터에서 서버를 실행해야 합니까? 내 컨테이너 중 일부는 외부에서 액세스할 수 있어야 하고 일부는 다른 컨테이너/호스트와 통신해야 합니다.

나는 아치 리눅스를 실행하고 있으며 대부분의 온라인 도움말은 우분투에 대한 것 같습니다.

답변1

netctl 및 dhcpcd가 컨테이너 내부에 설치되어 있는지 확인한 후(pacman -Q netctl dhcpcd) 컨테이너에서 다음 명령을 실행합니다.

cat > /etc/netctl/eth0
Connection=ethernet
IP=dhcp
Interface=eth0

파일에 쓰려면 CTRL-D를 누르세요. 그런 다음 다음 명령을 실행하여 프로필을 활성화합니다.

netctl enable eth0

마지막으로 컨테이너를 다시 시작하면 DHCP 할당 IP 주소가 있어야 합니다.

답변2

cat <<\EOF >> /etc/netctl/eth
Connection=ethernet
IP=dhcp
Interface=eth0
EOF

파일을 만드는 것이 더 좋은 방법이라고 생각합니다.

관련 정보