한 포트는 *를 사용하여 수신하고 있고 다른 포트는 127.0.0.1을 사용하여 수신하고 있으며 첫 번째 포트만 원격 연결을 허용합니다.

한 포트는 *를 사용하여 수신하고 있고 다른 포트는 127.0.0.1을 사용하여 수신하고 있으며 첫 번째 포트만 원격 연결을 허용합니다.

아래 첨부된 사진을 보시고 설명드리겠습니다.

포트

그래서 포트 8983을 사용하여 Solr를 실행했습니다. 스크린샷에서 볼 수 있듯이 "TCP *:8983 (LISTEN)"으로 나열되어 있습니다. 그리고 잘 작동합니다. 포트 8983을 통해 원격으로 내 서버에 연결하고 Solr를 사용할 수 있습니다.

하지만 저는 포트 9200을 사용하여 Elasticsearch도 실행합니다. 목록에서 볼 수 있듯이 "TCP 127.0.0.1:9200 (LISTEN)"입니다. 안타깝게도 포트 9200에 원격으로 연결하여 내 서버에서 Elasticsearch를 사용할 수 없습니다. 그 이유에 대한 단서가 될 것 같습니다.

방화벽 문제는 아닌 것으로 확신합니다. 입력과 출력 모두에서 포트를 열거나 포트를 전혀 나열하지 않고 모든 규칙을 제거하는 등 가능한 모든 방법으로 방화벽을 사용했지만 아무것도 작동하지 않았습니다.

포트 9200에는 원격으로 연결할 수 없는데 포트 8983에는 원격으로 연결할 수 있는 이유는 무엇입니까?

또한 이것은 내 라우터가 아닙니다. 8983과 9200을 모두 내 라우터의 서버로 전달합니다.

답변1

127.0.0.1에서 수신 대기하는 포트는 루프백 네트워크 인터페이스( lo)에서만 수신 대기한다는 의미이며, 이는 localhost에서만 액세스할 수 있음을 의미합니다. 보안상의 이유로 이는 일반적으로 기본값입니다.

에서 0.0.0.0이 작업을 수행 할 수 있습니다 .network.host: 0.0.0.0elasticsearch.yml

관련 정보