![IP 주소 구성을 위한 대체 방법](https://linux55.com/image/162310/IP%20%EC%A3%BC%EC%86%8C%20%EA%B5%AC%EC%84%B1%EC%9D%84%20%EC%9C%84%ED%95%9C%20%EB%8C%80%EC%B2%B4%20%EB%B0%A9%EB%B2%95.png)
파일 시스템의 파일에서 부팅 시 IP 주소와 MAC 주소를 가져와야 하는 임베디드 Linux 장치를 설정하고 있습니다. /root/ipaddress
내용이 "192.168.10.10"과 /root/macaddress
"02:02:02:02:02:02" 만 있는 파일이 있다고 가정합니다 . 나머지 구성은 구성할 수 없어야 합니다.
현재 네트워크 구성은 을 통해 수행되며 ifup -i /etc/interfaces -a
, IP 주소는 다음 섹션에서 정의됩니다.
# The loopback network interface
#auto lo
#iface eth0 inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.10.10
netmask 255.255.255.0
/etc/interfaces 파일에서 환경 변수를 사용해 보았으나 성공하지 못했습니다.
ip
이 명령을 사용하여 인터페이스를 다시 종료하고 IP 및 MAC 주소를 구성한 다음 다시 시작하는 스크립트를 작성할 수 있습니다 . 그러나 이는 비효율적인 것 같습니다.
답변1
ifupdown
스크립트 세트는 이런 방식으로 작동하도록 설계되지 않았습니다.
대신 다음을 수행할 수 있습니다.
- 사용을 중단
ifupdown
하고 전용 스크립트에서 직접 네트워크를 구성해 보세요. (저는 아마도 이 옵션을 선택할 것입니다) post-up
다음과 같이 기능을 사용하십시오ifupdown
.
iface eth0 inet static
pre-up ifconfig eth0 hw ether `cat /root/macaddress`
address 0.0.0.0
netmask 255.255.255.0
post-up ifconfig eth0 `cat /root/ipaddress`
포스트업이 백틱 구성을 관리할 수 있는지 여부는 테스트하지 않았습니다. ..
manual
어쩌면 (대신에) 메소드를 파헤쳐 볼 수도 있습니다 static
.