저는 학교 과제를 완료하기 위해 Debian GNU/Linux 8 서버를 실행하고 있습니다.
열심히 일하면서서비스 네트워크 재가동그리고 나에게 다음과 같은 오류가 발생했습니다.
root@server:~# service networking restart
[warn] Running /etc/init.d/networking restart is deprecated because it may not re-enable some interfaces ... (warning).
[....] Reconfiguring network interfaces...RTNETLINK answers: File exists
Failed to bring up eth0.
done.
이것은 /etc/network/interfaces 파일입니다:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 193.191.187.47
netmask 255.255.255.128
gateway 193.191.187.62
post-up arp -f /etc/ethers
iface eth0 inet6 static
address 2001:6a8:2880:a077::47
netmask 64
gateway 2001:6a8:2880:a077::1
최근에는 이 구성에서 아무것도 변경하지 않았습니다. 나는 postfix SMTP 배포 작업을 하고 있으며 ip6tables를 사용하여 일부 ipv6 포트를 열었습니다. 이로 인해 문제가 발생합니까?
건배
답변1
RTNETLINK answers: File exists
이는 이미 동일한 IP 주소를 가지고 있는 인터페이스에 IP 주소를 추가하려고 할 때 발생하는 혼란스러운 오류입니다. 정확히 존재하는 "파일"이 아니라 IP입니다.
스크립트에서 언급했듯이 더 이상 사용되지 않습니다. 무슨 일이 일어나고 있는지는 인터페이스를 제대로 종료하지 않고 인터페이스에서 기존 IP를 제거하지 않는다는 것입니다. 다른 방법을 통해 인터페이스를 다시 시작해야 합니다.
데비안의 현재 접근 방식은 개별 인터페이스를 사용 ifdown
, ifup
중지 및 시작하는 것입니다. 예를 들어:
ifdown eth0; ifup eth0
ifup
ifdown
(다른 답변과 달리) 실패가 보고되더라도 우리는 항상 인터페이스를 다시 시작하려고 노력한다는 점에 유의하세요 . 피할 수 있다면 문제가 발생했다는 이유로 원격으로 시스템에 액세스할 수 없는 상황을 원하지는 않을 것입니다(항상 피할 수는 없지만).
답변2
경고에 표시된 대로 네트워크 구성을 다시 로드하는 이 방법은 더 이상 사용되지 않습니다. 대신 네트워크 어댑터 수준에서 이 작업을 수행해야 합니다.
ifdown eth0 && ifup eth0
이렇게 하면 네트워크 어댑터가 비활성화되고 비활성화에 성공하면 새 구성으로 다시 시작합니다.