Windowsで会場のLANにつなぎつつインターネットはiPhoneのテザリングを使う

会場のLANにIRCサーバが立っているのでそこに接続したいが、ホテルから外に向かうネットワークがへぼい場合、インターネットへの接続は自分のiPhoneなどをUSB接続してテザリングした方が快適だったりする。両立するにはどうすればいいか、という話。

まあ「ルーティングの設定をする」が正解なのだろうけど、Windowsでどうやるのかなぁと思って検索して調べたもでやり方をメモしておく。

まず今のルーティングテーブルを表示してみる。関係なさそうなところは削除してある。会場のLANが 192.168.200.0/24 で、チャットサーバーは192.168.200.5で立っている。

>route print

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0    192.168.200.1   192.168.200.99     25
          0.0.0.0          0.0.0.0      172.20.10.1      172.20.10.7     20
    192.168.200.0    255.255.255.0            リンク上    192.168.200.99    281
   192.168.200.99  255.255.255.255            リンク上    192.168.200.99    281
  192.168.200.255  255.255.255.255            リンク上    192.168.200.99    281

一番上の行を消せばいいだけのように思うので以下のように実行。

> route DELETE 0.0.0.0 MASK 0.0.0.0 192.168.200.1
 OK!

もう一度printしてみたらちゃんと削除されてた。僕の期待していたように振舞っているのかtracertで確認。

> tracert 8.8.8.8

google-public-dns-a.google.com [8.8.8.8] へのルートをトレースしています
経由するホップ数は最大 30 です:

  1     1 ms    <1 ms    <1 ms  172.20.10.1
(以下略)

> tracert 192.168.200.5

192.168.200.5 へのルートをトレースしています。経由するホップ数は最大 30 です

  1     2 ms     1 ms     6 ms  192.168.200.5

トレースを完了しました。

ちゃんと確認するためには、削除する前に「8.8.8.8にアクセスしたときに192.168.200.1を通る」を検証しておくべきだったな。



続き。翌日。

元に戻ってる。

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0    192.168.200.1   192.168.200.99     25
          0.0.0.0          0.0.0.0      172.20.10.1      172.20.10.7     20

ということに変に接続が切れるので気づいた。

~$ git clone https://github.com/miyo/geister_server.java.git
Cloning into 'geister_server.java'...
fatal: unable to access 'https://github.com/miyo/geister_server.java.git/': Failed to connect to github.com port 443: Connection refused

~$ git clone https://github.com/miyo/geister_server.java.git
Cloning into 'geister_server.java'...
error: RPC failed; result=6, HTTP code = 0
fatal: The remote end hung up unexpectedly


あれー、ちゃんとiPhoneの側を通っているなぁ。

> tracert github.com

github.com [192.30.252.130] へのルートをトレースしています
経由するホップ数は最大 30 です:

  1     2 ms    <1 ms    <1 ms  172.20.10.1


ルートをDELETEしたらエラーメッセージが変わった。

~$ git clone https://github.com/miyo/geister_server.java.git
Cloning into 'geister_server.java'...
fatal: unable to access 'https://github.com/miyo/geister_server.java.git/': Could not resolve host: github.com

~$ git clone https://github.com/miyo/geister_server.java.git
Cloning into 'geister_server.java'...
fatal: unable to access 'https://github.com/miyo/geister_server.java.git/': Could not resolve host: github.com

うーん、どうしたらいいいのかな。名前解決できないことが問題の根っこじゃなさそうだ。

~$ git clone https://192.30.252.129/miyo/geister_server.java.git
Cloning into 'geister_server.java'...
fatal: unable to access 'https://192.30.252.129/miyo/geister_server.java.git/': Failed to connect to 192.30.252.129 port 443: Connection timed out