TCP연결에서 처음 IP연결이 아닌 다른 IP연결로 변형되도 연결이 성립이 되는지 ?

ljh0431의 이미지

client에서 TCP로 서버에 연결을 시도할 경우, 패킷의 목적지 주소를 중간에 임의대로 바꾸어 원래의 IP가 할당된

서버가 아닌 다른 IP(변형된 IP)가 할당된 서버에 패킷이 도착해도 client와 연결관계가 성립이 되나요 ?

궁금합니다.

chadr의 이미지

아니요. 성립되지 않습니다. tcp연결의 경우에는 아래와 같은 과정을 거칩니다.

c (SYN) ----> s
s (SYN and ACK) ----> s
c (ACK) ----> s

여기서 맨 처음 SYN를 보낼때 서로간에 시작할 시퀸스 번호를 교환합니다.
그후 패킷들은 상대방이 원하는 시퀸스 번호를 찍어서 패킷을 보내야합니다.
그렇지 않을 경우에는 잘못된 시퀸스 번호라고 응답이 가고 서로간에 데이터 교환이
이루어지지 않습니다. 시작 시퀸스 번호는 랜덤으로 고르게 되며 어쩌다가 우연하게
전혀 상관 없는 곳과 시퀸스 번호가 맞는 확률도 있습니다.

물론 처음부터 SYN를 보낼때 IP가 변형되고 이후 데이터들도 변형된 IP로 보내진다면
연결이 됩니다. 물론 변형된 IP에 실제 컴퓨터가 존재하고 포트도 열려 있어야 하겠지요.

하지만 원칙적으로 처음 SYN 패킷이 아닌 이후 패킷들을 임의의 IP로 보내도 정상적인
통신이 이루어지지 않습니다.
-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.

-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.