"RTNETLINK 답변 : 파일이 있습니다"/ etc / network / interfaces 2 개의 게이트웨이가 포함되어 있지 않습니다. 무엇이 잘못 되었습니까?


14

이것은 내 /etc/network/interfaces파일 내용입니다

이것이 적용되는 유일한 방법은 시스템을 재부팅 할 때입니다.

수동으로 적용하려고합니다. 아래의 나의 시도.

auto eth0
    iface eth0 inet static
           address 192.168.1.57
           netmask 255.255.255.0
           gateway 192.168.1.1
           up ip addr add 192.168.0.57/24 dev eth0 label eth0:1
           down ip addr del 192.168.0.57/24 dev eth0 label eth0:1
           up ip route add 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
           down ip route del 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20

먼저 실행을 시도 sudo ifup eth0

그리고 나는 받는다

RTNETLINK answers: File exists
Failed to bring up eth0.

/etc/network/interfaces에만 작업 때 시스템을 다시 부팅

내가 시도한 것 이외

sudo /etc/init.d/networking restart

sudo service network-manager restart

sudo service networking restart

그러나 아무도 interfaces파일 의 변경 사항을 가져 오지 않습니다.

내 유일한 옵션은 sudo ifup eth0위의 오류를 발생시키는 것입니다.

뭐가 잘못 되었 니?

답변:


8

iface다음과 같이 스탠자 앞의 공백을 제거하도록 구성 파일을 편집하십시오 .

auto eth0
iface eth0 inet static
   address 192.168.1.57
   netmask 255.255.255.0
   gateway 192.168.1.1
   up ip addr add 192.168.0.57/24 dev eth0 label eth0:1
   down ip addr del 192.168.0.57/24 dev eth0 label eth0:1
   up ip route add 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
   down ip route del 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20

수신되는 메시지는 인터페이스가 이미 작동 중임을 나타 내기 때문에 수행 ifdown하기 전에 수행해야 ifup합니다. 그러나 ssh를 통해 연결하는 경우 조심해야합니다. 스스로 잠글 수 있습니다. 이것은 그것을하는 방법입니다.

sudo ifdown eth0 && sudo ifup eth0

이 두 명령이 같은 줄에서 어떻게 실행되는지 유의하십시오. 예방 조치만으로, 서버 콘솔에 액세스하거나 문제가 발생할 경우 서버를 재부팅 할 수 있는지 확인하십시오.


3
달리기 sudo ifdown eth0주고 ifdown: interface eth0 not configured달리기 sudo ifdown eth0 && ifup eth0주는 동일
wolfgang

1
@wolfgang, 파일 iface에서 스탠자 앞의 공백을 제거하고 다시 시도 하십시오. /etc/network/interfacesifdown/ifup
dtoubelis

이것은 효과가 있었다! 전에 공간 iface이 그렇게 큰 거래를 만들 것이라고 기대하지 않았습니다 . 누군가에게 도움이 될 수 있도록 답을 편집 해 주시겠습니까? 그리고 sudo전에 해야합니다 ifup-> sudo ifdown eth0 && sudo ifup eth0그렇지 않으면 permission denied오류가 발생합니다
wolfgang

1

/ run / network / ifstate를 찾고 원하는 eth가 보이지 않으면 eth (n) = eth (0)을 추가하여 수정하십시오.

전의:

$ cat /run/network/ifstate 
eth0=eth0
lo=lo
eth3=eth3
eth1=eth1

그런 다음 sudo ifdown eth (n) 명령을 사용한 다음 sudo ifup eth (n) 명령을 사용하십시오.


1

RTNETLINK 오류가 사라지기 전에 모든 인터페이스와 브리지를 중지 한 다음 모듈을 언로드해야했습니다.

ifconfig eth0 down
ifconfig br0 down
rmmod e1000e              # or whatever module your nic uses
modprobe e1000e
service networking start

또는 그냥 재부팅하십시오.


0

방금이 문제에 부딪 쳤으며 위의 해결책 중 어느 것도 나를 위해 일하지 않았습니다. /run/network/ifstate이전 상태로 즉시 재설정되었으므로 변경할 수 없습니다 . 또한 sudo ifdown eth0 && sudo ifup eth0작동하지 않았습니다.

그런 다음 다음 명령을 발견했습니다.

sudo ip addr flush dev eth0

문제를 해결했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.