port 에서 수신 대기하는 서비스가 있습니다 :3000
. 하지만 포트로 변경하고 싶습니다 :8080
. 불행하게도 제가 실행 중인 프로그램에서는 수신 대기 포트를 변경할 수 없습니다.
포트를 포트로 localhost
전달할 수 있는 방법이 있습니까 ? 그러면 외부에서 연결하면 트래픽이 ?:3000
:8080
:8080
:3000
명령 을 시도했지만 socat
작동하지 않는 것 같습니다.
편집: 다음 명령을 시도했습니다(발견됨)여기). 명령이 계속 실행된다는 것 외에는 아무것도 표시되지 않습니다. Firefox에서 열려고 하면 계속 로드되고 결국에는 연결 시간 초과 오류가 발생합니다. Chrome에서는 연결이 재설정되었다고 표시됩니다. 제가 socat
네트워킹에 익숙하지 않아 명령을 올바르게 구성하지 않아서 죄송합니다.
socat tcp-listen:8080,reuseaddr,fork tcp:localhost:3000
편집 2: 나는 nmap
localhost( ssh
장치에)에서 실행 중이며 모든 포트를 검색합니다. 어떤 이유로 포트가 :3000
열려 있는 것으로 표시되지 않습니다. 그러나 localhost 대신 공용 IP 주소를 사용하면 포트가 :3000
표시됩니다. 왜 이런 일이 발생하는지 아시는 분이 계시다면 저는 Linode를 통해 호스팅하고 있습니다.
curl
편집 3: 공용 IP를 사용하여 명령을 사용할 때 올바른 HTML 코드와 상태를 제공하기 때문에 포트가 올바르게 전달된 것 같습니다 HTTP 200 OK
. 하지만 브라우저에서 열려고 하면 connection timed out
(Firefox) 또는 connection was reset
(Chrome)이라는 메시지가 표시됩니다. 그래서 이것은 브라우저 문제인 것 같습니다. HTTPS
해당되는 경우 포트 8080을 통해 연결하려고 한다는 것을 알고 있습니다 .
미리 감사드립니다!