저는 가정용 컴퓨터 H(Linux), 업무용 컴퓨터 W(Mac OS X), IP 11.22.33.44의 공용 서버 S(H와 동일한 Linux)를 가지고 있습니다.
H와 W는 모두 NAT 뒤에 있으므로 autossh를 사용하여 둘 다 S에 연결하고 터널을 통해 서로 통신합니다.
# From H to S
ssh -R :8822:127.0.0.1:22 [email protected]
# From W to S
ssh -R :7722:127.0.0.1:22 [email protected]
저는 사무실에 있을 때 종종 SSH를 통해 H에 연결하고 X11을 다시 전달합니다.
# on W
ssh -X -p 8822 [email protected]
xterm
...
H와 W 모두 S에 대한 대기 시간이 매우 낮으므로(핑 약 2~5ms) 사무실을 옮기고 ISP가 변경되기 전까지는 모든 것이 매우 원활하게 진행되었습니다. W에서 S로의 핑은 낮게 유지되며 X 전달이 시작될 때까지 모든 것이 여전히 빠릅니다. X11을 통해 H에서 xterm을 시작하려고 할 때마다 TCP 연결이 극도로 느려졌습니다. 그러나 W에서 H로 전달되지 않는 다른 SSH 세션은 빠른 속도로 유지됩니다. 응답하지 않는 xterm을 Ctrl-C로 누른 후 전달 SSH 세션이 즉시 응답하도록 복구됩니다.
누군가가 SSH 세션을 지켜보고 있는 것처럼 느껴지며 X11 통신이 이루어질 때마다 속도가 느려집니다. 어느 부분이 잘못되었는지 확인하기 위해 다음과 같은 테스트를 수행했습니다.
# on W
ssh -R 11.22.33.44:6010:127.0.0.1:6000 [email protected]
# on S
DISPLAY=11.22.33.44:10 xterm # works fine!
# on H
DISPLAY=11.22.33.44:10 xterm # unresponsive
이상한 점은 xterm이 S에서 시작하면 괜찮다는 것입니다. H에서 오면 H→S 부분이 아니라 W→S SSH 세션에서 타이핑이 매우 느려지면서 멈춥니다. Ctrl-C를 누른 후 xterm이 즉시 복구되었습니다.
H→S 및 W→S가 모두 우수하므로(대기 시간 및 대역폭 측면에서) 네트워크 문제는 아닌 것 같습니다. 터널 위에서 W와 H 사이의 scp는 빠릅니다. lftp fish://H
W에서도 잘 작동합니다.
ISP 전환 후 이런 일이 발생했기 때문에 ISP에 의한 트래픽 제한이 있는지 생각했지만 X11 전달은 W와 S 사이 또는 H와 S 사이의 모든 방향에서 잘 작동합니다. 단지 W와 H 사이의 X11 트래픽은 내가 생각할 수 있는 어떤 방식으로든 SSH 연결 속도가 느려집니다.
나는 이 혼란에 대해 깊은 혼란을 겪고 있습니다. 어느 부분을 조사해야 하는지 알아내는 데 도움을 줄 수 있는 사람이 있나요?