Debian에서 ifconfig 대신 ip addr을 사용하면 "RTNETLINK 답변: 파일이 존재합니다"라고 보고됩니다.

Debian에서 ifconfig 대신 ip addr을 사용하면 "RTNETLINK 답변: 파일이 존재합니다"라고 보고됩니다.

나는 무선 eth0라우터 로 사용하는 Debian 시스템을 가지고 있습니다 wlan0. 이제 추가 eth1네트워크를 수동으로 추가했습니다 ifconfig.

alix:~# ifconfig eth1 192.168.0.2 네트워크 마스크 255.255.255.0
알릭스:~# netstat -rn
커널 IP 라우팅 테이블
대상 게이트웨이 Genmask 플래그 MSS 창 irtt Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 유 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 유 0 0 0 eth0
192.168.3.0 0.0.0.0 255.255.255.0 유 0 0 0 wlan0
알릭스:~# ping 192.168.0.254
PING 192.168.0.254 (192.168.0.254) 56(84) 바이트의 데이터.
192.168.0.254의 64바이트: icmp_req=1 ttl=64 time=0.537 ms
192.168.0.254의 64바이트: icmp_req=2 ttl=64 time=0.199 ms
192.168.0.254의 64바이트: icmp_req=3 ttl=64 time=0.188 ms
^C
--- 192.168.0.254 핑 통계---
3개의 데이터 패킷 보내기, 3개의 데이터 패킷 수신, 0% 패킷 손실, 시간 2005ms
rtt 최소/평균/최대/mdev = 0.188/0.308/0.537/0.161밀리초

보시다시피 모든 것이 잘 작동합니다.

이제 구성을 영구적으로 만들고 싶습니다. 그래서 다음 섹션을 추가했습니다 /etc/network/interfaces.

alix:~# sed -n '/iface eth1/,/^$/p' /etc/network/interfaces
iface eth1 inet 정적
  주소 192.168.0.2
  넷마스크 255.255.255.0

하지만 네트워크를 시작하려고 하면 다음 오류가 발생합니다.

alix:~# ifconfig eth1 닫기
alix:~# ifup -v eth1
인터페이스 eth1=eth1(inet) 구성
--verbose /etc/network/if-pre-up.d 부분 실행
실행 부분: /etc/network/if-pre-up.d/hostapd를 실행합니다.
IP 주소 추가 192.168.0.2/255.255.255.0 브로드캐스트 192.168.0.255 dev eth1 라벨 eth1
RTNETLINK 답변: 파일이 존재합니다
eth1을 시작할 수 없습니다.

명령을 수동으로 실행하면 ip동일한 오류가 발생합니다.

alix:~# ip addr add 192.168.0.2/255.255.255.0 Broadcast 192.168.0.255 dev eth1 label eth1
RTNETLINK 답변: 파일이 존재합니다

명령에 어떤 문제가 있나요? 어떻게 데비안에게 옳은 일을 하라고 말할 수 있나요?

답변1

장치를 부팅하기 전에 장치를 플러시해야 한다는 것을 알았습니다.

# ip addr flush dev eth1

이와 같이 수동으로 설정된 인터페이스 구성 정보를 지우는 것은에서 언급된우분투 서버 가이드.

답변2

를 사용하면 ip addr flush작동하지만 해당 인터페이스에 설정된 모든 주소도 지워집니다. 원격 시스템에 로그인한 경우 사용 중인 주소도 포함될 수 있습니다. 이로 인해 장치가 잠길 수 있습니다.

RNETLINK answers: File existsadd이는 기존 규칙과 충돌하는 규칙을 사용하려고 할 때 발생합니다. 나는 OP ifconfig가 .​addchangereplace

더 안전한 것을 사용하거나 ip addr change대체 하십시오.ip addr replace

답변3

비슷한 문제가 있습니다. 정확히 이와 같이 10,000달러 시나리오를 플레이할 때 /e/n/id/etho에 누락된 콘텐츠를 계속 추가하려고 했습니다.

그러나 인터페이스에 대한 매뉴얼 페이지를 연구하는 동안 모든 예제 세트에는 실제 데이터의 두 줄, 즉 ipv4 주소 /24와 라우터 주소를 지정하는 게이트웨이 줄만 있다는 것을 알았습니다. 그래서 거기에 있는 eth0 파일을 삭제하고 재부팅했더니 잘 되더군요.

관련 정보