본문 바로가기
컴퓨터/자질구레 팁

공유기를 통해 특정 컴퓨터로 접속하기 (port forwarding)

by adnoctum 2018. 3. 5.




   공유기를 설치했을 경우 외부에서 공유기에 연결된 컴퓨터 중 특정 컴퓨터로 접속하는 방법을 알아 본다. 터미널 접속의 경우에 해당하며 접속당하는 컴퓨터는 모두 CentOS 6.9 버전이다. 만약 다른 경우라면 각 경우에 대응하는 방식으로 해야 할 것이다. 


   전체적인 상황을 살펴 보자면 다음과 같다. 



중요한 부분은 붉은색으로 표시한 1), 2), 그리고 v 부분이다. 기본적인 원리는 공유기에서 설정하는 외부포트:mac address 라고 볼 수 있다. 즉, 공유기에서 특정 외부 포트 번호를 특정 내부 IP로 할당(1번)을 하고, 특정 내부 IP를 특정 MAC ADDRESS로 할당(2번)을 하는 것이다. 그러면 외부에서 접속할 때 사용하는 포트 번호에 따라 그 포트에 할당된 내부 IP로 접속이 되는데 이 때 그 내부 IP에 할당된 MAC ADDRESS를 갖는 컴퓨터로 접속을 하게 되는 원리이다. 최종적으로 외부에서 사용하는 주소는 위 그림에서 V 로 표시한 바와 같이 특정 IP에 포트 번호를 붙여 쓰는 형식이다. 위에서 사용한 숫자는 다음 그림에 나오는 설정 예시 그림에 사용된 숫자와 동일하므로 이를 염두에 두고 설정하는 부분들을 주의 깊게 보면 된다. 이제 각 단계에서의 설정 방법을 살펴 보자. 



   공유기에 직접 랜선을 통해 컴퓨터에서 연결한 후 각 공유기 제조사 별로 이용되는 공유기 설정 IP로 접속한다. 



ipTIME의 경우 192.168.0.1 로 접속을 한다. 그 후 관리도구를 들어 간다.





만약 고정 IP를 사용하는 곳이라면 인터넷 연결 설정에서 그 고정 IP를 설정해 준다. 많은 경우 일반 가정은 유동 IP 를 사용할텐데 그 경우 고정 IP 를 사용할 수 있는 별도의 방법을 사용해야 하는데 그것은 이 글에서 다루지 않는다. 




그 다음 해야 할 일은 외부 포트 번호를 내부 IP 및 내부 port 로 설정하는 부분이다. 그림과 같이 고급설정 ==> NAT/라우터 관리 ==> 포트 포워딩 설정, 으로 들어 간다. 외부 포트와 내부 포트는 범위를 지정할 수도 있고 위처럼 특정 포트 하나만 지정할 수도 있다. 접속 당할 컴퓨터들은 전부 ssh 로 접속당할 것이라서 22번 포트를 이용했다. 즉, 외부에서 299번 포트를 사용하면 내부에서는 22번 포트로 접속당한다는 의미이다. 규칙 이름은 큰 의미는 없고 사람이 보기 위한 것이다. 나는 접속당할 세 대의 컴퓨터에 부여한 고유 ID 를 규칙이름으로 사용해서 각 컴퓨터에 대한 설정을 쉽게 알아 볼 수 있도록 했다. 이로서 외부 포트 번호가 내부 IP 및 내부 포트 번호로 할당이 되었다. 이제 내부 IP 를 각각의 컴퓨터에 할당하는 방법을 살펴 보자.  




우선 필요에 따라 DHCP 서버를 중지시킨다. 수동 IP 할당 설정으로 이동하여 V 표시한 부분의 '추가' 메뉴를 이용하여 각 MAC ADDRESS 에 직접 내부 IP 를 할당한다. check box를 클릭하면 mac address를 직접 적어 넣을 수 있게 되고, 추가 버튼을 누르면 오른쪽처럼 하나씩 추가가 된다. 이로써 내부 IP 번호가 특정 MAC ADDRESS로 할당이 되었다. 


   정리를 해보자. 외부 포트 번호가 내부 IP 및 내부 포트 번호로 할당이 되었다. 또한, 내부 IP 가 특정  mac address 로 할당이 되었다. 따라서 외부 포트 번호는 내부 IP를 통해 특정 mac address로 전달이 되고, 이로써 외부 포트 번호를 이용하여 그 mac address를 갖는 랜카드를 갖는 컴퓨터로 접속을 할 수 있게끔 된 것이다. 


   이제 접속 당할 컴퓨터들의 설정을 바꾸어 보자. 전부 CentOS 6.9 이므로, 다른 운영 체제일 경우 그 경우에 IP 설정하는 법에 따라 설정하면 된다. 



terminal 에서 root 계정으로 setup 명령어를 친 후 네트워크 카드 설정하는 곳으로 간다. 그 후 DHCP 사용을 해제하고, 공유기 설정에 사용한 IP 를 설정해 준다. 



그 후 ifdown 과 ifup 을 통해 랜카드를 재인식 시켜 주자. 





마찬가지로 X 가 설치되지 않은 경우에도 root 계정에서 setup 을 하면 동일한 메뉴가 나오므로 위와 같이 한다. 



마찬가지로 랜카드를 재인식 시켜 준다. 



이제 6999 포트로 접속을 하면 CPU-017 컴퓨터로, 8999 포트는 CPU-013 컴퓨터로, 299 포트는 CPU-008 컴퓨터로 접속이 되는 것을 볼 수 있다.