Open
Description
Describe the bug
I've encountered a weird behavior when I deployed on fly.io. The connection works fine at first, but then the webserver stops responding. If I test the same containers on a local machine everything works fine and there are no error messages in the logs. I feel like fly change the connection somehow, but I don't know how to ask about it on their forums. Can you describe what do those error messages mean?
To Reproduce
Steps to reproduce the behavior:
- Create Dockerfile
FROM rapiz1/rathole
COPY ./config.toml /app/config.toml
CMD ["--server", "/app/config.toml"]
- Deploy on fly.io
Configuration
Configuration used to reproduce the behavior:
Server:
[server]
bind_addr = "0.0.0.0:7003"
[server.services.webserver]
token = "TOKEN HERE"
bind_addr = "0.0.0.0:8080"
Client:
[client]
remote_addr = "tnoisu.fly.dev:7003"
[client.services.webserver]
token = "TOKEN HERE"
local_addr = "libreddit:8080"
Logs
Client logs:
client_1 | 2023-11-11T00:35:34.432314Z INFO config_watcher{path="/app/config.toml"}: rathole::config_watcher: Start watching the config
client_1 | 2023-11-11T00:35:34.995333Z INFO handle{service=webserver}:run: rathole::client: Control channel established
client_1 | 2023-11-11T00:35:35.264566Z WARN handle{service=webserver}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof
client_1 | 2023-11-11T00:35:35.265458Z WARN handle{service=webserver}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof
client_1 | 2023-11-11T00:35:35.265672Z WARN handle{service=webserver}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof
Server logs:
Nov 11 00:35:35.442 WARN connection{addr=172.16.159.90:38538}: rathole::server: Data channel has incorrect nonce
Nov 11 00:35:35.447 WARN connection{addr=172.16.159.90:38544}: rathole::server: Data channel has incorrect nonce
Nov 11 00:35:35.447 WARN connection{addr=172.16.159.90:38546}: rathole::server: Data channel has incorrect nonce
Environment:
- OS: latest image from Docker hub. I also tried v0.4.1
rathole --version
output:
rathole
Build Timestamp: 2023-10-01T10:08:07.162273634Z
Build Version: 0.5.0
Commit SHA: None
Commit Date: None
Commit Branch: None
cargo Target Triple: x86_64-unknown-linux-gnu
cargo Profile: release
cargo Features: base64,client,default,futures_core,futures_sink,hot_reload,noise,notify,server,snowstorm,tls,tokio_native_tls,tokio_tungstenite,tokio_util,websocket
- CPU architecture: x64