이더넷을 통해 라우터에 연결된 Raspbian을 실행하는 Raspberry Pi가 있습니다. 예를 들어, 라우터는 DCHP 및 고정 IP 주소로 실행되었으며 로컬 LAN에서는 SSH를 통해 제대로 연결할 수 있습니다. 하지만 해당 장치는 라우터의 연결된 장치 목록에 전혀 표시되지 않으므로 외부 액세스에 대한 포트 전달을 구성할 수 없습니다.
원래는 라우터 문제라고 하려고 했는데, 지금은 두 개의 다른 라우터(BT Home Hub 2 및 Edimax BR-6428)를 사용해 보았지만 동일한 결과가 나오므로 OS 문제인 것으로 생각됩니다.
장치가 라우터에 표시되도록 하려면 몇 가지 설정을 수행해야 합니까?
답변1
Rpi가 고정 IP를 사용하는 네트워크에 있는 경우 자신을 "광고"하기 위해 라우터와 통신하지 않습니다.
매우 간단한 해결책은 upnpc 프로그램(다음 위치)을 사용하는 것입니다.작은 NPC패키지)를 사용하여 포트 전달을 동적으로 설정합니다. 항상 라우터를 조정하는 것보다 훨씬 쉽습니다.
라우터에서 upnp를 활성화해야 하며 여기에는 일반적인 고려 사항이 적용됩니다.
다음 명령은 인터넷 포트 1337을 서버의 내부 포트 22로 전달합니다.
upnpc -e "ssh server" -a $(hostname --all-ip-addresses) 22 1337 tcp
물론, 자세한 내용은 upnpc 맨페이지를 참조하세요. 하지만 여기서는 -e
설정 포워딩 설정 이름을 볼 수 있고, -a
서버의 IP 주소가 나열되어 있으며, 마지막 3개 항목은 내부 포트, 외부 포트, 연결 유형(tcp)입니다. /udp).
또한 비슷한 명령을 사용하여 DMZ 및 모든 보안 항목을 설정할 필요 없이 외부적으로 내 웹 서버에 포트 80을 전달합니다. (아니요, 여기에 실제 외부 SSH 포트 번호를 입력하지 않았습니다...으!)
또 다른 방법은 라우터에서 Rpi에 대한 정적 DHCP 설정을 구성한 다음 Rpi를 다시 동적 IP(DHCP) 모드로 전환하는 것입니다. 그러나 RPi 주소가 변경될 수 있으므로 일종의 네임서버 시스템도 설정하지 않는 한 , 그래서 이것은 빨리 까다로워질 수 있습니다. (네, 그렇지 않다는 걸 알아요~해야 한다도착하다... )
가장 좋은 접근 방식은 필요에 따라 조정되므로 현재 IP 주소를 사용하여 자체 전달을 설정하도록 하는 것입니다.