데비안에서 이더넷에 연결된 케이블이없는 경우 DHCP를 건너 뛰는 방법


12

Bananian Linux가 로그온 할 때 연결되지 않은 eth0 인터페이스에 대한 DHCP 임대를 얻는 데 시간을 낭비하고 있습니다. 익스텐더 케이블이 연결되어 있지만 다른 쪽 끝에는 아무것도 없습니다.

나는 가지고있다

auto eth0
iface eth0 inet dhcp 

내에서 세트는 /etc/network/interfaces내가 할 것이가 이더넷이 연결되어있는 경우를 선택하려는 때문에,하지만 난 확실히 케이블이 이더넷에 연결되지 않은 경우 시스템의 시작을 느리게하고 싶지 않아요. 나는 시스템이 이것을 자동으로 알고 인터페이스에 대한 DHCP 임대를 시도하지 않을 것이라고 가정했습니다.

다음은로드 타임에 표시되는 내용입니다 (마지막 세 줄 참조).

여기에 이미지 설명을 입력하십시오

임대가 오지 않는다는 것을 이해하면 부팅을 진행합니다.

연결된 케이블이없는 경우 DHCP에 알리지 않는 방법이 있습니까?

답변:


16

지정하면

allow-hotplug eth0

대신에

auto eth0

/etc/network/interfaces연결되면 udev부팅 할 때마다 무언가가 트리거 될 때만 연결이 시작됩니다 .

그것은 귀하의 사건을 처리하기에 충분할 수도 있지만 반드시 그런 것은 아닙니다. 맨이 있음을 언급interfaces

( "hot-hotplug"라고 표시된 인터페이스는 udev가 감지 할 때 나타납니다. 인터페이스가 이미 존재하는 경우 부팅 중이거나 나중에 USB 네트워크 카드를 꽂을 때와 같은 인터페이스 일 수 있습니다. 연결된 네트워크 케이블을 감지하는 것과는 아무런 관련이 없습니다.)

당신은 사용해야 할 수도 /etc/network/if-up.d/00check-network-cable에서 패키지 에는 케이블이 연결되어 있지 않은 경우 인터페이스를 건너 뜁니다.ifupdown-extra


부팅 전에 케이블이 이미 연결되어 있으면 어떻게합니까? 이 udev경우 부팅시 이벤트가 연결을 트리거합니까? 다시 말해, udev어떤 장치가 이미 기기의 포트에 연결되어 있는지 확인합니까?
Joseph R.

0

문제에 대한 해결책은 항상 둘 이상입니다.

이 컴퓨터를 항상 집과 같은 한 곳에 두는 경우 가장 쉬운 방법은 dhcp-client 패키지를 제거하고 고정 IP 주소, 마스크, 게이트웨이를 설정하는 것입니다. 필요하지 않다고 가정하면 다음과 같은 작업을 수행합니다.

apt-get remove isc-dhcp-client

의존성이 있다면 먼저 알려줄 것입니다. 패키지를 제거한 후에는 더 이상 부팅 중에 기다릴 필요가 없습니다.

이것은 당신이 무엇을 설정할 것의 예입니다 /etc/network/interfaces

iface eth0 inet static
    address 192.168.0.2
    netmask 255.255.255.0
    gateway 192.168.0.254

출처 : https://wiki.debian.org/DHCP_Client


질문에서 언급했듯이 이더넷 케이블이 연결되어 있으면 DHCP를 사용하고 싶습니다. 따라서 DHCP 클라이언트를 제거해도 도움이되지 않습니다.
Maxim V. Pavlov

0

살펴보십시오 ifplugd:

ifplugd는 Linux 데몬으로 케이블이 연결되면 이더넷 장치를 자동으로 구성하고 케이블을 뽑으면 자동으로 구성 해제합니다. 케이블이 실제로 연결되어있을 때만 인터페이스를 구성하기 때문에 온보드 네트워크 어댑터가있는 랩톱에 유용합니다.

ifplugd ifplugd는 배포의 기본 네트워크 구성 유틸리티와 인터페이스합니다.

일부 기능 :

  • 배포판의 기본 ifup / ifdown 프로그램을 사용합니다.
  • 케이블의 플러그를 뽑거나 꽂았을 때 신호음이 울릴 수 있으며 인터페이스 구성이 성공 또는 실패했습니다.
  • 링크 상태를 얻기 위해 Linux SIOCETHTOOL (최신, 일명 ethtool API), SIOCGMIIREG (이전, 일명 mii-diag / mii-tool API) 및 SIOCDEVPRIVATE (가장 오래된 mii-tool API) ioctl ()을 지원합니다. 릴리스 0.24는 IFF_RUNNING 인터페이스 플래그로 링크 감지를 지원합니다.
  • Syslog 지원
  • 작은 프로그램-이진 파일은 25KB (libdaemon의 경우 16KB)입니다.
  • 다중 이더넷 인터페이스 지원
  • 짧은 "플러그되지 않은"기간 (-d 옵션) 또는 짧은 "플러그 된"기간 (-u 옵션)을 무시하도록 구성 가능
  • 무선 네트워킹을 지원합니다. AP와의 연결이 감지 될 때마다 네트워크가 구성됩니다. AP 연결에 성공하기 전에 WEP 키를 구성하는 기능이 필요한 경우 waproamd를 살펴보십시오.
  • 케이블 감지를 지원하지 않는 네트워크 장치의 호환 모드 (-F 옵션)

패키지 데비안 패키지 검색 페이지 : ifplugd .
공식 ifplugd 사이트

apt-get update && apt-get-install ifplud트릭을해야한다. 참고로 systemd 제작자는이 패키지를 유지 관리합니다.


2
마지막 릴리스가 10 년 전부터 ;-) 이후 "...이 패키지를 유지 관리하는 데 사용 된"것으로 인정됩니다. 요즘 레나 아마 추천 systemd-networkd으로는 ... ifplugd설치 후, 당신은 또한 당신의 장치를 (구체적으로 구성 할 필요가 allow-ifplugd에서 /etc/network/interfaces).
Stephen Kitt

@StephenKitt allow-ifplugd코드 를 사용 하거나 보셨습니까 ? 검색하는 동안 난 단지 발견 bugs.debian.org/cgi-bin/bugreport.cgi?bug=468896을 라고하는 allow-ifplugd기능은 받아 들여지지 않았다.
sourcejedi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.