開発日誌Vol.012 – Tailscale経由での接続トラブル

Tailscale経由で別の端末からStreamlitアプリにアクセスできるように設定を試みた。Docker環境でアプリを動作させ、通信状況を確認。netstatcurl を使用して接続状況を調査したが、他の端末からのアクセスが成功せず、原因の特定に時間を要した。

コード修正・エラー対応

  • 発生したエラー
    • curl コマンドを使用したところ、接続がタイムアウトする問題が発生。
    • netstat の結果ではポートがリスニング状態になっているが、外部からのアクセスがブロックされている可能性がある。
  • 試した対応
    • config.toml を確認し、Streamlitの server.address0.0.0.0 に設定済みであることを確認。
    • ファイアウォールやネットワーク設定の見直しを行い、Tailscale経由での通信ルートを調査。
    • curl の詳細オプションを使用し、接続のどこで問題が発生しているのかを分析。

今後の進め方

  • Tailscaleの設定を再確認し、適切なルーティングがされているかを調査
  • Dockerのネットワーク設定を見直し、ホスト間の通信が可能かどうかを確認
  • 別の方法(ngrokやCloudflare Tunnelなど)を試して、外部接続の選択肢を増やす
  • 翌日は別の環境やツールを使って再検証し、問題の切り分けを進める

重要なポイント

Tailscaleを利用する際、適切なルート設定やファイアウォールの許可が必要。単純なポート開放だけでは接続できない可能性があるため、細かいネットワーク設定を確認することが重要。

タイトルとURLをコピーしました