2009. 4. 24. 18:28

PC에서 구성하는 사무실 환경(中), 공유기를 이용한 포트포워딩

1. 우선 가장 중요한것은 외부에서 내 웹서버로 접속하기 위해서는 내 컴퓨터가 외부의 인터넷과 접속이 되어 있어야 한다.

흔히 우리가 말하는 인터넷은 IPv4(4개의 IP번호)를 기반으로 한다. 우리가 인터넷에 접속하면 반드시 그 PC는 아이피라는것을 할당받는다.

자 그럼 우리의 IP를 확인해보자..

윈도우즈에서는 이런방식으로 IP를 비주얼하게 확인할수 있다.

다른방법으로는 시작> cmd 으로 도스창을 연다음 ipconfig명령으로 간단히 알아볼수도 있다.

자기 PC의 IP는 반드시 확인해봐야 한다.

위 그림은 Vmware가상 IP가 추가되어 있지만 실제 PC의 실제 IP는 ethernet adapter로컬영역연결의 IP(세번째)가 실제 IP이다..

위에 보건데 222.239로 시작된다..

이는 공인된 IP이다. 즉 외부에서 접속해도 실제 접속 가능한 IP라는것이다.

<윈도우즈에서 Apache를 구동한 모습이다.>

즉 공인된 IP만 물려있으면 웹서버용 프로그램만 구동하면 웹서버의 기능을 한다.

그러나.. 내 PC가 사설IP에 물려있다면 외부에서 웹으로 내 PC로의 접속은 불가하다.

<리눅스에 확인한 서브리눅스머신의 IP현황>

사설 IP란 내부네트워크를 구성할때 쓰는 IP이다. 보통 IP의 앞자리가 192나 10으로 시작되는 IP들이 이에 해당한다. 즉 공유기나 허브등을 이용해서 내부적 네트워크를 만들고 사용하기 때문이다. 내부 네트워크에 물려있는 PC간에는 웹서버나 FTP등 인터넷 서비스를 할수있으나 외부에서 접속할수는 없다.

그렇다고 꼭 안되는것은 아니다...

되게 하는것이 또 리눅스이다..

실제 많은 사설 네트워크들이 하나의 공인된 인터넷IP에 물려서 여러대에서 인터넷을 공유한다..

이 공유기라는것이 엄밀히 따지자면, 작은 리눅스박스이다..

리눅스안에서는 강력한 IP공유 기능등이 있는데, 매스컬레이딩이라는 기법이다.

이 기법을 응용해서 작은 박스로 만든것이 공유기이다..

물론 이 기능에는 사설IP에 접속된 PC를 외부에서 접속하게 하는 기능이 있는데..

이 기능이 바로 포트포워딩 기능이다..

공유기안에는 인터넷을 서비스하는 내부 네트워크에 외부 접속신호로 부터 포트를 돌려주는 기능이 있는데 <간단히 말하면 외부에서 몇번 포트 응답하라고 요청하면 공유기는 해석해서 몇번째 컴터가 나대신 그 포트에 응답하라 이런기능이다.> 이것이 포트포워딩이라는것이다.

맨 위 윈도우즈의 예제 그림에서 보면 게이트웨이라는것이 있다. 이것은 내 PC가 외부로 나가는 관문IP이다. 즉 지금의 내컴은 뒷자리 36.130 IP를 가진 기계를 통해서 외부네트워크에 접속한다는것이다.

그럼 내부네트워크도 마찬가지이다..

보통 대개 하나의 공유기만을 쓰는 곳은 공유기의 IP가 gateway기계가 된다..

이 gateway기계를 좀 더 유식한 넘들의 말을 빌리면 라우터라고 하는것이 되는것이다..

어쨋든.. 우리의 공유기 IP는 gateway ip를 가지므로 공유기에서 포트포워딩 설정을 해주기 위해서 공유기에 접속하자.. 걍 익스플러러에서 공유기 IP를 치면 접속된다.

처음으로 IP에 관해 접하시는분들은 매우 어려울듯 싶으나, 아주 간단하다..

자신의 PC IP를 알고 공유기 IP로 인터넷접속해서 설정만 해주면 된다.. 특히 포트포워딩은 웹서버 80포트 ssh서버 22 ftp서버 21포트를 내부IP인 내 PC IP로 포트만 돌려주면 된다는 야그다..그럼 외부에서 위의 밑줄친 외부IP주소로 웹,ftp,ssh등으로 접속하면  공유기는  내부의 IP 192.168.0.201로 접속시켜 준다는 야그다.(포트포워딩 완료 .. 더이상 설명없음)

2. 포트포워딩도 완료했다. 사실 포트포워딩같은건 아주 기본적인거라 안하고 싶었지만, 웹서버를 만들고자 하는 분들 중 이런것을 모르는분이 있을거 같아 한번 다뤄보았다.

포트포워딩이 완료되었으면 자신의 사무실이나 자신의 네트워크의 구성도를 혼미하게 하나 그려보고 설계해볼수 있을것이다....

그럼 다음에는 vmware로 첫번째 리눅스인 fc9을 설치해본다. 또한 이번 포스팅에는 ubuntu도 같이 진행해보자..