다른 사람에게 질문을 던지고 싶은 사람이라면 누구든지 위의 글을 반드시 읽어볼 것을 권한다. 김정균 님이 작성하신
HOWTO For Beginners
이다.
사실 대화하면서 많이 답답했다. 포트포워딩이 왜 필요한지 말도 안하고 포트포워딩을 해달라고 하였으니…
1. 리눅스 설치하세요.
2. 터미널에서 sudo apt-get install iptables 를 입력하세요.
3. iptables 설정하세요
물론 내가 iptables를 개뿔 아는게 있을리 없지만, 이건 그 이전에 매우 기본적인 것에 대한 내용이다. 일단 이 분은 리눅스가 무엇인지 모르고 계셨기에… 아니, 그보다는 운영체제라는 것에 대해서 모르고 있었던 것 같다. ”
윈도에서 큐파일이라는 프로그램을 이용하기 위해 포트포워딩을 해야 한다
“는 것을 질문했어야 제대로 된 답이 나올텐데, 앞쪽을 잘라놓고 ”
포트포워딩을 해야 한다
“는 것만 질문 하면 그 어떠한 전문가라도 iptables 를 쓰라고 할 것이다.
http://www.google.co.kr/search?q=%ED%8F%AC%ED%8A%B8+%ED%8F%AC%EC%9B%8C%EB%94%A9&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ko:official&client=firefox-a
구글에서 검색해보면 iptables를 이용하는 방법이 가장 처음에 나온다. 어쨌든, 나야 뭐 질문도 많이 해봤고 대답도 많이 해봤기에 답답함을 이겨내고 원초적인 부분을 파내서 이분이 원하는 답을 해주긴 했지만. 뭔가 안된다는 질문은 아무런 대답도 얻을 수 없는 공허한 질문이다. 뭐가 안된다는 건지 알려주지 않으면 답이 나오지 않는 법이다.
그래서, 질문을 잘하는 것이 좋은 대답을 얻는 비결이다. 우문에는 우답밖에 나오지 않는다.
KIM 님과 2009-01-14 오후 2:40:40 의 대화
(오후 2:40:44) snowall: 누구신가요?
—
포스에 의해 혼란스러운 기분이 됩니다…
KIM: 안녕하세요^^
KIM: kldp 회원인데 문의드릴께있어서요^^
snowall: 아…네
snowall: 물어보세요
KIM: 리눅스 잘하세요?
snowall: 아뇨…;;;
snowall: 그냥 엔드유저로 쓰는 정도죠…
KIM: 어느 정도 하시겠네요 그럼 ^^
snowall: 네
KIM: iptables는 netfilter 기반의 오픈소스 방화벽입니다.
그런데 저걸 하기위해선 리눅스 시스템에 kernel에서 netfilter 가 활성화 되어있어야 합니다.
만약 리눅스 기반에 접속을 한다만 iptables 명령이 동작이 되는지 확인해 보시고 안된다면
어쩔수 없는 부분입니다.
KIM: 이게 무슨 말인가요?
snowall: 음…말 그대로인 것 같은데요
snowall: iptables를 쓰려고 하시는 건가요?
KIM: 네
KIM: 할 수 있으시죠?
snowall: iptables가 netfilter기반의 오픈소스 방화벽이라는 말 뜻은
snowall: iptables를 쓰려면 netfilter라는 기능을 쓸 수 있어야 한다는 뜻이예요
snowall: netfilter 기능은 리눅스 커널에서 제공하는 기능이고
snowall: 따라서, iptables를 사용하시려는 컴퓨터에 설치된 리눅스 커널에서 netfilter 기능을 제공하지 않으면 iptables도 쓸 수 없어요
KIM: 혹시 이명령어 아시나요?
KIM: iptables -t nat -A PREROUTING -p udp –dport 9292 -j MNAT -to 192.168.0.5:9292
snowall: 그건 모르죠…
snowall: 음…질문의 요지를 잘 모르겠네요. iptables를 아직 쓰고 있지 않지만 앞으로 쓰기 위해서 물어보신 건지, iptables를 쓰고 있는데 그 기능의 어떤 부분을 물어보신 건지
KIM: 전자요..
KIM: 포트포워딩을 하기위해서요.
snowall: 음…그럼 그 명령어를 물어보기 전에, 사용하시는 컴퓨터에서 iptables를 쓸 수 있는지를 먼저 알아보셔야 할 것 같은데요
KIM: 아… 그걸 어떻게 알 수있나요? 아시다시피 초짜라서요.ㅡㅡ;
snowall: iptables는 설치 하셨나요?
KIM: 아직… 사실 뭔지도 모르고 … 제 목적은 포트포워딩을 하기 위해 iptable 이 있다는 걸 알았으니까요.
KIM: 다운을 어디서 받나요?
snowall: 리눅스 소프트웨어는 대부분 저장소에서 바로 설치할 수 있어요
KIM: 시키는데로 해보겠습니다.
snowall: 쓰고 있는 리눅스 머신이 어떤 건가요?
KIM: 음… 아까도 말씀드렸지만… 리눅스를 잘모릅니다. 깔려있는게 없어요.
KIM: 무엇을 깔아야하지요?
snowall: 일단, 설치된 리눅스의 종류가 우분투인지 페도라인지 젠투인지 수세인지…등등에 따라서 패키지 매니저가 다르거든요…
KIM: 제가 하고자하는걸 한다면 뭘로 해야할지….
snowall: 음…리눅스는 설치를 하셨나요?
KIM: 아직… 이요…
snowall: 그럼 리눅스 설치를 먼저 하셔야겠네요
snowall: 순서를 알려드릴게요
KIM: 프리웨어인가요?
snowall: 네
snowall: 무료로 구할 수 있어요
KIM: 그럼 시키는데로 하겠습니다.
KIM: 어디서 무엇을 받으면 되나요?
snowall: ubuntu.com 에 가서 Ubuntu 배포판 8.10을 다운받으세요
snowall: iso파일이니까 CD나 DVD로 구워서 설치하시면 됩니다
snowall: 리눅스 설치하는건 윈도 설치하는 것 만큼이나 쉬우므로 따로 설명은 안드려도 되겠죠
KIM: 데몬이 있으니 가능할 거 같습니다.
snowall: 그 다음에 터미널에서
sudo apt-get install iptables
라고 입력하시면 iptables가 설치될거예요
snowall: 음…리눅스는 윈도와 마찬가지로 하나의 운영체제이기 때문에 가상CD로는 설치하는게 의미가 없습니다
snowall: 버추얼 PC같은걸 사용해서 윈도 위에서 돌리실 건가요?
KIM: 음… 하시기 전에 bigin download 에서 로케이션을 선택하라는 문구가 나왔습니다.
KIM: begin
snowall: Asia에서 적당히 가까운 곳을 고르시면 될거예요
KIM: 용량이 크네요?
snowall: 1. 리눅스 설치 2. iptables 설치 3. iptables 설정. 이 순서대로 가시면 됩니다
snowall: 네
snowall: 운영체제라니까요…
snowall: 포트포워딩을 하는 목적은 뭐죠?
KIM: 9100 을 열어주려고 합니다.
snowall: 그러니까, 9100포트를 여는 목적이요
KIM: p2p 인 큐파일이 9100 포트를 열어야 해서요.
snowall: 음…
snowall: 그런 용도라면, 저한테 질문하신건 가장 첫줄부터 전부 잘못 질문하셨습니다…
snowall: 큐파일은 윈도에서 돌아가는 프로그램이므로
snowall: 윈도에서 쓰는 방화벽에서 9100포트를 열어주면 됩니다
snowall: 윈도에서 쓰는 방화벽은 제어판에 가면 아이콘이 있구요
KIM: 아.. 열었는데 안되었습니다.
snowall: 그래도 안된다면, 또다른 방화벽이 있는 거겠죠
KIM: 그게 포트포워딩을 해줘야 된다고 들어서요.
snowall: 포트포워딩을 하는건 맞겠지만, iptables는 리눅스용이니까 윈도에서는 돌아가지 않아요
snowall: 윈도용 포트포워딩 솔루션을 따로 찾아보셔야 할 것 같습니다
snowall: 만약에 공유기를 사용하신다면 공유기에서 포트포워딩을 지원할거예요
KIM: 음 iptable 은 공유기 포트포워딩 해주는게 아닌가요?
snowall: iptables는 “리눅스”가 설치된 PC에서 사용하는 방화벽 프로그램입니다
snowall: 공유기 포트포워딩은 공유기에서 자체적으로 지원하겠죠
KIM: 그럼 공유기 포트포워딩 하는 방법이 아니였나요?
snowall: 네
KIM:
http://dduri.net/blog/entry/%C6%F7%C6%AE-%C6%F7%BF%F6%B5%F9
참고 사이트입니다.
snowall: 저건 리눅스에서 쓰는 명령어 얘기들인데요
snowall: 공유기 포트포워딩을 하시려면
snowall: 지금 쓰고 계시는 공유기의 사용설명서를 주의깊게 읽어보시면 됩니다
KIM: 지금 말씀은 리눅스의 포트 포워딩이 공유기의 포트포워딩으로 대처가 안된다는 말씀인거 같은데, 되신다는 분도 있고…. 물론 공유기 자체만으로 포트포워딩을 할 수 있긴 하지만, 그럴 처지가 아니라서요.
snowall: 음..
KIM: 그리서 리눅스를 이용 하려 했던 겁니다.
snowall: 큐파일이라는 프로그램은 윈도용이고, 리눅스에서는 돌아가지 않아요
snowall: 리눅스는 윈도랑 같은 수준의 운영체제입니다
snowall: 리눅스에서 포트포워딩을 하는건 된다 하더라도
snowall: 큐파일이 돌아가질 않겠죠
KIM: 아…. 그럼 혹시…. 윈도우에서 제어판가서 포트를 열어주려는 것과 리눅스에서 iptable 해주는 것과 같은 의미인가요?
snowall: 네
KIM: 아 ㅠㅠ 그런거였군요..
KIM: 근데 이 부분에 대해서 문의를 드린 분이 가능하다고 했었는데 참고 로 멜 보여드릴께요.
KIM: iptables는 netfilter 기반의 오픈소스 방화벽입니다.
그런데 저걸 하기위해선 리눅스 시스템에 kernel에서 netfilter 가 활성화 되어있어야 합니다.
만약 리눅스 기반에 접속을 한다만 iptables 명령이 동작이 되는지 확인해 보시고 안된다면
어쩔수 없는 부분입니다.
결론은 내려드리면 만약에 iptables 가 없다면 라우팅 table에 목록을 올려서 하는 방법이 가능하고
route 명령으로 진행할수 있기는 합니다
KIM: 이렇게 말씀하시던데요….?
snowall: 저 얘기는 그냥 “포트 포워딩”만 물어봐서 답이 나온 거겠죠
snowall: 큐파일 얘기는 안하셨죠?
KIM: 네..
snowall: 그분에게 큐파일 얘기도 같이 하면서 물어보세요…저랑 똑같은 얘기를 하실 거예요
KIM: 근데 이거 불법인가요?
snowall: 어떤게요?
KIM: 포트포워딩하는거요..
snowall: 아뇨
KIM: 그런분도 계시길래…’
snowall: 자기가 쓰는 컴퓨터의 포트를 바꿔서 쓰는건 당연히 아무도 말리지 않습니다…
snowall: 남의 PC를 주인의 허락 없이 어떻게 하는 것은 불법이지만
KIM: 님 그러면 공유기 포트는 열 수 있는 방법이 있나요?
snowall: 그건 공유기 설명서를 보셔야죠
KIM: 공유기를 리셋 할 수 있는 상황이 아니라서요..
snowall: 리셋은 안해도 될 것 같긴 한데요
snowall: 아무튼 그 부분에 대해서는 공유기 설명서를 참고하세요
KIM: 아이디와 비번을 입력해야하는데… 설치하신분이 연락두절이라서요.
snowall: 음…그럼 제가 할 수 있는 방법이 없겠네요
snowall: 혹시 모르니까 설명서에 있는 초기 아이디와 초기 비번으로 시도해 보세요
KIM: 그럼 하나만 여쭙겠습니다. 윈도우는 제어판에서 포트를 쉽게 바꿀 수있는데에 비해 리눅스는 같은 운영체제 임에도 그런 복잡한 명령어가 있나요?
snowall: 뭐…그렇다기보다는, 리눅스에도 포트 열어주는 GUI로 된 프로그램이 있겠죠
snowall: 있었던 것 같은데요
snowall: 리눅스는 명령어로 해도 되고 마우스로 클릭해서 해도 될 겁니다
snowall: 윈도에도 명령어로 할 수 있는게 있겠지만…
snowall: 아무튼
snowall: GUI로 된 프로그램을 설명하기 위해서는 화면 캡쳐도 넣어야 하고 여러가지로 복잡하지만
snowall: 명령어로 설명할 때는 아까 보여주신 것처럼 한줄 붙여넣기 하면 되죠
snowall: 더 편하지 않나 싶은데요
KIM: 아… 그렇군요..
KIM: 리눅스 조금 아신다고 하셨는데 이렇게 박학다식하신분을 만나게 되어 영광이었습니다.. 그리고 친절한 설명 정말 감사합니다.
snowall: 음…전혀 박학다식하지 않습니다…;;
snowall: KLDP의 고수분들과 비교하면 저는 초보중의 초보인데요 -_-
KIM: 그래도 제가 보기에 크게 느껴질 뿐입니다.^^
KIM: 아무튼 오늘 정말 감사했습니다.
snowall: 네
snowall: 수고하세요
KIM: 네^^
댓글 남기기