두 번째 DHCP 서버에 게이트웨이를 어떻게 설정합니까?

두 번째 DHCP 서버에 게이트웨이를 어떻게 설정합니까?

내 인터넷 서비스 제공업체의 라우터에 고정 경로를 추가해야 합니다. 안타깝게도 이 라우터는 최종 사용자에게 이러한 수정 옵션을 제공하지 않습니다.

정적 라우팅이 필요한 이유는 해당 LAN의 클라이언트가 Wireguard를 통해 연결된 원격 LAN으로 패킷을 보내는 방법을 알 수 있기 때문입니다.

그래서 내 해결책은 Wireguard 터널을 제공하기 위해 Raspberry Pi에 두 번째 DHCP 서버를 설정하는 것이었습니다. DHCP 서버를 인증되지 않은 서버로 설정하고 하드코딩된 MAC 주소를 구성에 추가하여 해당 클라이언트에만 IP를 제공하도록 했습니다.

이제 클라이언트가 두 번째 DHCP 서버에서 IP를 가져오면 해당 서버에서 기본 게이트웨이도 가져올 수 있습니다. DHCP 서버에 대해 이것을 설정할 수 있습니다.

ISP 라우터 대신 Raspberry Pi를 기본 게이트웨이로 설정하는 것이 맞나요?(이것은 Pi에서 DHCP를 받는 클라이언트에만 영향을 미칩니다.)

그런 다음 특정 원격 LAN에 대한 경로를 Wireguard 터널에 추가할 수 있습니다. 기본 경로는 인터넷의 게이트웨이인 인터넷 서비스 제공업체로 이동합니다.

그게 효과가 있을까요?

답변1

내 질문에 대한 의견에서는 첫 번째 DHCP 서버를 비활성화하는 것이 유효한 접근 방식일 수 있다고 제안합니다. 그러나 지금까지는 두 번째 서버가 신뢰할 수 없고 범위가 분리되어 있기 때문에 두 서버를 실행하는 데 아무런 문제가 없는 것 같습니다. 지금까지 그는 두 개의 테스트 클라이언트에 두 개의 IP를 제공하는 것 같습니다. (문제가 발견되면 답변을 편집할 수 있습니다.)


또한: ISP의 라우터 local DHCPv4서버를 고정 IP로 전환하면 off전원이 켜진 것처럼 보입니다. non-authorative전원을 끈 후에도 GUI에서 주소를 편집할 수 있기 때문입니다. MAC그래서 local'지역적 책임'을 나타내는 것 같습니다.


첫 번째 DHCP 서버를 비활성화할 수 있더라도 여전히 다음과 같이 끝납니다.

내 클라이언트가 내 DHCP 서버로부터 터널에 대한 경로를 받지 못합니다. 이는 고정 경로를 배포하도록 DHCP 서버를 구성하여 수행할 수 있습니다.

참고: 기본 게이트웨이를 다른 고정 경로로 정의하지 않는 한 더 이상 기본 게이트웨이를 배포하지 않습니다.https://ral-arturo.org/2018/09/12/dhcp-static-route.html

따라서 내 문제에 대한 해결책은 두 번째(기본) 게이트웨이를 설정하는 것이 아니라 내 클라이언트가 필요로 하는 경로를 배포하도록 DHCP를 구성하는 것입니다.

/etc/dhcp/dhcpd.conf모습은 다음과 같습니다.

#authoritative;
default-lease-time 86400;
max-lease-time 86400;
option rfc3442-classless-static-routes code 121 = array of integer 8;
option ms-classless-static-routes code 249 = array of integer 8;

subnet 192.168.111.0 netmask 255.255.255.0 {
  range 192.168.111.223 192.168.111.254;
  option routers 192.168.111.1;
  #deny unkown-clients;
  option domain-name-servers 192.168.111.1;
  option domain-name "local";
  option rfc3442-classless-static-routes 24, 192, 168, 1, 192, 168, 111, 222;
  option ms-classless-static-routes 24, 192, 168, 1, 192, 168, 111, 222;
}

host squeezeboxtest {
  hardware ethernet 00:04:20:5f:55:8e;
  fixed-address 192.168.111.231;
  option host-name "squeezeboxtest";
}

host asusklein {
  hardware ethernet 04:e6:76:5d:cf:a6;
  fixed-address 192.168.111.232;
  option host-name "asusklein";
}

host HAPZE {
  hardware ethernet fc:f1:52:fc:a6:60;
  fixed-address 192.168.111.21;
  option host-name "Sony HAP-ZE";
}

다음 명령을 사용하여 서버를 다시 시작할 수 있습니다

sudo systemctl restart isc-dhcp-server

참고: 라인을 추가하여 클라이언트가 두 번째 DHCP 서버에서 IP를 얻지 못하도록 제한할 수 있습니다 deny unkown-clients;.

관련 정보