내가 이해하는 바는 0.0.0.0
이 호스트의 모든 네트워크 인터페이스( 포함 127.0.0.1
)를 의미합니다.
서버(OS Linux)에 세 개의 192.0.2.40
인터페이스 가 있다고 가정합니다 .203.0.113.150
127.0.0.1
에는 192.0.2.40:777
ServerA가 있습니다. 에는 203.0.113.150:777
ServerB가 있습니다. 서버는 에 대한 요청을 어떻게 처리합니까 0.0.0.0:777
? 동일한 포트( 777
)가 다른 인터페이스를 수신하는 경우를 의미합니다. 아니면 내가 모든 것을 잘못 이해하고 있나요?
답변1
서버는 0.0.0.0:777에 대한 요청을 어떻게 처리합니까?
그렇지 않습니다. 0.0.0.0으로 요청을 보낼 수 없습니다.
이것이 의미하는 바는 호스트가 사용된 IP 주소에 관계없이 모든 요청(포트 777에서)에 반응한다는 것입니다. 분명히 서버는 IP 주소로 구성되어야 하지만 이는 서버 프로세스가 추가 필터링을 수행하지 않음을 의미합니다.
답변2
0.0.0.0
내부적으로 사용 됩니다 127.0.0.1
. 0.0.0.0
모든 인터페이스를 지정하는데 사용되며, 127.0.0.1
루프백 인터페이스를 지정합니다. 들어오는 트래픽과는 아무런 관련이 없습니다.
클라이언트가 서버에 연결해야 하는 경우 인터페이스의 실제 IP 주소(예: 192.0.2.40:777
또는 ) 를 지정해야 합니다 203.0.113.150:777
. 이것이 Linux 시스템이 어떤 서버가 요청을 처리해야 하는지를 아는 방법입니다. (클라이언트가 127.0.0.1
또는 에 연결을 시도하는 경우 0.0.0.0
에 연결됩니다.그들만의귀하의 시스템이 아닙니다.)