Rasperry Pi의 Raspbian Linux에서 DHCP 클라이언트를 비활성화하는 방법이 있습니까? 0 192.168.111.2:123

고정 IP 만 사용해야하는 Linux 서버 (Raspbian을 OS로 사용하는 Rasperry Pi)가 있습니다.

그러나 DHCP 서버에서 IP를 얻었습니다 (DHCP에서 제공 한 IP는 192.168.111.2). 네트워크 설정에 따라 서버는 고정 IP ( 192.168.111.100) 만 사용해야합니다 .

내용 /etc/network/interfaces:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.111.100
netmask 255.255.255.0
gateway 192.168.111.1
dns-nameservers ip1 ip2

정적 구성을 사용하더라도 DHCP에서 제공 한 IP를 사용하여 장치에 SSH로 연결할 수 있습니다. 또한 ntpd올바른 IP뿐만 아니라 잘못된 IP를 사용하고있는 것으로 보입니다 .

Netstat의 출력 :

udp        0      0 192.168.111.2:123       0.0.0.0:*                           2774/ntpd
udp        0      0 192.168.111.100:123     0.0.0.0:*                           2774/ntpd

ifconfigIP 에 따르면 192.168.111.2사용되지 않습니다 :

eth0      Link encap:Ethernet  HWaddr b8:27:eb:be:18:1c
          inet addr:192.168.111.100  Bcast:192.168.111.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:138099 errors:0 dropped:0 overruns:0 frame:0
          TX packets:81146 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:95954711 (91.5 MiB)  TX bytes:27076870 (25.8 MiB)

ps -ef | grep dhcp DHCP 데몬이 실행 중임을 나타냅니다.

root      2000     1  0 Oct07 ?        00:00:06 /sbin/dhcpcd

DHCP데몬이 시작되지 않도록 비활성화하고 서버가 정적 서버 만 사용하도록 하려면 어떻게해야 합니까?



답변

고정 IP가 설정되어있는 경우 설명에 따라 설정이 작동하고 작동하기를 원하기 때문에이 시나리오는 정말 이상하게 들립니다 /etc/network/interfaces. 즉, 공식 Raspberry Pi 사이트에 대한이 토론은 “rpdom”사용자가 “2015 년 5 월 28 일 목요일 오전 6:21 오전”게시물에이를 언급 한 문제에 중점을 둡니다.

이것은 최신 업데이트에서 발생합니다. 인터페이스 파일의 기능을 무시하고 자체 작업을 수행하는 새로운 dhcp 클라이언트로 인해 발생합니다. 나는 dhcp 클라이언트를 재구성하는 방법 (어떻게 또는 그것을 수행 할 수 있는지, 여전히 나를 위해 일하는 오래된 것입니다), 비활성화 또는 제거 (가능한 경우) 방법을 살펴볼 것입니다.

스레드 사용자 “KLL”에서 더 깊은 것은 ” 2015 년 8 월 10 일 월요일 오후 12시 59 분”이라는 응답의 다른 게시물 을 제안 합니다 . “knute”에 따르면 :

어딘가에 업그레이드 /etc/network/interfaces가 dhcp 또는 static 대신 ‘manual’단어로 파일을 수정
한 결과 두 개의 IP 주소, 내 정적 주소 및 dhcp 주소가 생겼습니다. 나는 마침내 그것을 가지고 놀 시간이 있었고 dhcpcd5그것이 이전에 있던 것과 다른 방식으로 작동 한다는 것을 알았습니다
. 고정 주소 만 얻으려면 수정하지 마십시오 /etc/network/interfaces. ‘수동’단어를 변경 한 경우 다시 바꾸고 /etc/dhcpcd.conf문서의 예에 표시된대로 수정
하십시오.

아이디어는 dhcpcd5업그레이드 중 하나에서 동작이 변경 되었다는 것입니다 . 이 문제를 해결하기위한 제안 은 고정 IP 주소를 얻기 위해 /etc/network/interfaces설정을 변경 하고 대신 설정을 조정하는 것입니다 /etc/dhcpcd.conf. 아래 구성 예 :

static <value>
             Configures a static <value>.  If you set ip_address then dhcpcd
             will not attempt to obtain a lease and just use the value for the
             address with an infinite lease time.

             Here is an example which configures a static address, routes and
             dns.
                   interface eth0
                   static ip_address=192.168.0.10/24
                   static routers=192.168.0.1
                   static domain_name_servers=192.168.0.1

자세한 내용은 공식 매뉴얼 페이지에서dhcpcd.conf 찾을 수 있습니다 .

즉, 다른 아이디어는 설정을 유지 /etc/network/interfaces한 다음 DHCP 데몬이 완전히 무시하도록 지시 /etc/dhcpcd.conf하는 행 denyinterfaces eth0을 추가하도록 편집 하는 것 eth0입니다. 어느 솔루션이든 작동하지만 전체 네트워킹 요구 / 요구 사항에 따라 하나의 솔루션이 더 선호되는 솔루션 일 수 있습니다.


답변

나를 위해 일한 것은 원래 질문에서와 같이 / etc / network / interfaces를 사용하고 단순히 dhcp 클라이언트를 제거하는 것입니다.

apt-get remove dhcpcd5 isc-dhcp-client isc-dhcp-common


답변

불행히도 여기에 제안 된 솔루션 중 어느 것도 나를 위해 일하지 않았다고 말해야합니다. 그러나 DHCP와의 오랜 전투 끝에 마침내 문제를 해결할 수있었습니다.

vi /etc/systemd/network/eth0.network

변화:

[Match]
Name=eth0

[Network]
DHCP=yes

에:

[Network]
DHCP=no

도움이 되었기를 바랍니다.


답변

dhcpcd와 같은 서비스를 비활성화하는 가장 좋은 방법은 시스템 관리 기능을 사용하는 것입니다. 서비스를 중지하지 않는 한 적용하려면 재부팅해야합니다.

Jessie ( systemd관리 사용 )의 경우 :

sudo systemctl disable dhcpcd.service

이전 Wheezy ( System-V관리)의 경우 :

sudo update-rc.d dhcpcd disable

그러나 비활성화하면 정적 IP 구성이 있는지 확인해야합니다. /etc/network/interfaces그렇지 않으면 인터페이스에 IP 주소가 표시되지 않습니다.


답변

Raspbian Jessie 2017-01-11에 필요한 작업을 요약하면 다음과 같습니다.

/ etc / network / interfaces를 편집하고 정적 주소 스탠자를 추가하고 정적 인터페이스에 대한 다른 참조를 제거하십시오 (이 경우 eth0). 자동 회선이 중요합니다. 그렇지 않으면 부팅시 인터페이스가 시작되지 않습니다.

    auto eth0
    iface eth0 inet static
      address 192.168.44.17
      netmask 255.255.255.0
      gateway 192.168.44.27

다음으로 dhcpcd를 비활성화하고 표준 네트워킹을 활성화하십시오.

  • dhcpcd 비활성화 : systemctl disable dhcpcd.service
  • 네트워킹 활성화 : systemctl enable networking
  • 재부팅

2017-01-11 릴리스 기준 Raspbian Jessie는 systemd의 네트워킹을 사용하지 않는 것 같습니다


답변

몇 가지를 시도하고 그것을 발견

 apt list --installed | grep dhcp

녹이다:

dhcpcd5
isc-dhcp-client
isc-dhcp-common

방금 비활성화 dhcpcd5하고 다음을 사용하여 수정했습니다.

 sudo apt-get remove dhcpcd5

재부팅하고 모두 멋있었습니다.


답변