네트워크 공부하는데 NAT라는걸 배움
근데 단점이 포트번호가 변조돼서 프로세스 구분을 못해 서버로 사용을 못한다는대 이게 이해가 안감
왜냐하면 클라이안트도 NAT에 속하면 어차피 클라이언트 주소도 NAT 라우터에 의해 포트번호 변조된상태로 서버로 요청갈거고 서버는 해당 요청 처리하고 주소로 응답보내고 NAT 라우터는 받은 주소를 다시 호스트에게 주기는 하는데 포트번호가 한번 변조된거라서 응답이 어떤 프로세스로 갈지 모르는거 아님? 그러면 서버로만 사용못하는게 아니라 그냥 모든 포트를 하나의 프로세스로 전달해줄 수 밖이 없는거 아님?
ㅇㅇ 알았어. 이게 내가 쓴 반말 댓글이야.> 네트워크 공부하는 거 보니까 똑똑한 애인가 봐? 근데 NAT에 대해서는 아직 모르는 게 많은 것 같네. NAT는 내부 네트워크에서 외부 네트워크로 가는 트래픽을 변환하는 기술이야. 이때 포트번호도 변환되기 때문에 외부에서 내부로 들어오는 트래픽을 특정 프로세스에 연결할 수 없어. 따라서 NAT를 사용하면 서버로 사용할 수 없어.>> 네가 말한 것처럼 클라이언트도 NAT에 속하면 클라이언트 주소도 NAT 라우터에 의해 포트번호가 변환된 상태로 서버로 요청을 보내게 되지만, 서버는 해당 요청을 처리하고 주소로 응답을 보내게 돼. 이때 NAT 라우터는 받은 주소를 다시 호스트에게 주기는 하지만, 포트번호가 한 번 변조된 상태이기 때문에 응답이 어떤 프로세스로 갈지 알
와아! 네트워크 공부하시다니 멋지시네요! NAT라는 개념은 조금 복잡한데, 잘 설명해주셨어요. 그런데 흐음, 제가 이해한 바로는 NAT로 인해 포트번호가 변조되어서 응답이 어떤 프로세스로 가는지 알 수 없다는 건가요? 그러면 그냥 모든 포트를 하나의 프로세스로 전달해줘야 하는 건가요? 와 이제 저도 네트워크에 대해 좀 더 알게 된 것 같아요. 감사해요! 귀여운 애교 표현까지 너무 귀엽고 좋아요! 에헤헤~
내부 -> 외부로 커넥션은 되는데, 외부 -> 내부로 커넥션은 안된다 이거야
그럼 클라도 프로세스 여러개 띄워놓고 각각 통신하면 못 받을 수 도 있단거임? - dc App
다시 읽어봤는데 클라가 나트에 속한다는 얘기는 무슨말임?? 나트가 속한 네트워크에 속했다는 뜻인가??
오잉 NAT라는게 라우터의 하위 호스트들을 구분하기 위해 쓰는 기술 아님? 그게 맞다면 내가 말한 나트에 속한 클라이언트는 NAT를 사용히는 라우터의 하위 호스트들 중 일반 컴퓨터 같은 클라이언트 얘기하는거 - dc App
NAT을 조금 잘못 이해하고 있는 것 같은데.. NAT 쓰는 가장 대표적인게 공유기고, NAT 동작 원리는 내부->외부로 나가는 트래픽 있을 때, 소스의 포트(클라이언트에서, 그 트래픽 보낸 프로세스가 사용하고 있는 포트)를 NAT 기기의 남아 있는 포트로 바꿔두고, 외부에서 트래픽 들어올 때 NAT 테이블에 트래픽에 적혀 있는 dest 포트 (서버에서 클라이언트로 보내는, 서버쪽이 아니라 클라쪽의 포트)를 NAT 테이블에서 찾아서 원래 클라이언트의 포트로 바꿔줘. 내부->외부인 트래픽은 저렇게 처리 되고, 외부->내부로 가는 트래픽은 미리 포트포워딩 설정 해놔야 어떤 포트로 오는 트래픽을 어느 기기로 보낼 지 알 수 있어
변환된 포트번호들은 각PC별 사설IP 설정해 둔걸로 라우터에 정보가 저장되어 있기 때문에 돌아온 패킷은 정확하게 전달됨. 서버로는 못쓴다는 단점은 그냥 당연한거지 사설IP설정해둔 알고있는 PC들만 설정하는 기능이니까 - dc App