독립적으로 확인하려고 노력해 왔습니다.이 stackoverflow 질문에 대답하세요소스가 특정 소스 주소를 요청하지 않을 때 Linux 커널이 IP 패킷에 소스 주소를 할당하는 방법입니다. 언급된 댓글 중 하나이 소스여기에는 다음 문장이 포함되어 있습니다.
이 힌트가 없으면 커널은 대상 주소와 동일한 네트워크에 있는 인터페이스에 구성된 첫 번째 주소를 선택합니다.
이 문장은 두 가지로 해석될 수 있다고 생각합니다.
- 커널은 대상 주소와 동일한 네트워크에 있는 인터페이스를 선택한 다음 해당 인터페이스에 할당된 첫 번째 주소를 선택합니다.
- 인터페이스에 할당된 주소 중 커널은 대상 주소와 동일한 네트워크에 있는 첫 번째 주소를 선택합니다.
첫 번째는 문장에 대한 순진한(즉, 순전히 문법적인) 해석이라고 생각하지만, 두 번째는 커널이 선택되었다고 추측하는 방식입니다. 내 추론은 다음과 같습니다. 일을 단순하게 유지하기 위해 이 네트워크에 게이트웨이/라우터가 없다고 가정합니다. 선택한 소스 주소가 동일한 네트워크에 없는 경우(첫 번째 설명에서 가능) 대상이 어떻게 소스 주소에 응답(예: TCP ACK)을 보낼 수 있습니까?
어떤 설명이 맞나요?
- 첫 번째인 경우 대상은 어떻게 응답을 소스로 다시 라우팅합니까?
- 이 동작에 대한 문서가 어디에 있습니까(가급적 Linux 매뉴얼 페이지)?