2011年8月28日日曜日

Debian GNU Linux 6.0.2(squeeze)でRTX1000にPPTP接続

RTX1000にGNOME標準のNetworkManagerでPPTP接続できたのでメモ。
RT58iとかでも大丈夫でしょう。同じだから。

細かい設定をしないとRTX1000がデフォルトゲートウェイになってしまうのでそうならないようにしています。
(RTX1000以下のネットワークにもつなぎつつ、Googleで検索とかメール受信とかしたいので。)

PPTP先のネットワークが 192.168.15.0/24。RTX1000は192.168.15.254。
192.168.15.0/24以外への通信はRTX1000を経由しないように設定しました。

(1)NetworkManagerのPPTPコンポーネントをインストール
以下のパッケージを追加でインストール。

# aptitude install network-manager-pptp network-manager-pptp-gnome

こんな感じにNetworkManager関連のパッケージがインストールされています。

# dpkg -l | grep network-manager
ii network-manager 0.8.1-6+squeeze1 network management framework daemon
ii network-manager-gnome 0.8.1-2 network management framework (GNOME frontend)
ii network-manager-pptp 0.8.1-1 network management framework (PPTP plugin core)
ii network-manager-pptp-gnome 0.8.1-1 network management framework (PPTP plugin GNOME GUI)


(2)とりあえず再ログイン(NetworkManagerの再起動)
さもないとVPN接続機能が読み込まれないかもしれない。(メニューに「VPN 設定」が出てこない)


(3)NetworkManagerのVPN設定
「VPN 設定」→「VPN を設定」で開き、「追加」ボタンを押す。


(4)VPN接続タイプの設定

こんな画面が出てくるのでPPTPを指定して「作成...」を押す。


(5)基本情報の入力。

接続先が分かるように接続名を設定。
ゲートウェイに接続先の名称もしくはIPアドレスを入力。
User nameにRTX1000に接続するVPN(PPTP)用ユーザ名、PasswordにVPN用パスワードを入力。

その後「Advanced」ボタンを押す。


(5)Advanced Optionsの設定

ことごとくチェックを外してしまえばいい。
認証はmschap、mschapv2のみでいいと思います。(RTX1000の設定にもよります)

「OK」を押してウインドウを閉じて「IPv4のセッティング」タブをクリック。


(6)IPv4のセッティング

接続するとRTX1000から自動でIPアドレスを割り当てるようにしているので特にこの画面で設定することはありません。

「Routes...」ボタンを押します。

(7)ルーティングの設定
冒頭でも書いたように、192.168.15.0/24に対してのみVPN先のネットワークを経由するようにします。


あとは「OK」を押していって設定ウインドウをすべて閉じます。

(8)VPN接続の実施

NetworkManagerのメニューを開き、「VPN 接続」→「設定した設定の名称」をクリック。

接続に成功すると上図の様にNetworkManagerのアイコンに鍵のアイコンが追加されます。


(9)ppp接続(PPTP接続)が確立してIPが割り当てられているか確認
ifconfigコマンドで確認する。

# ifconfig
ppp0 Link encap:Point-to-Pointプロトコル
inetアドレス:192.168.15.2 P-t-P:192.168.15.254 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1400 メトリック:1
RXパケット:8 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:13 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:3
RXバイト:80 (80.0 B) TXバイト:124 (124.0 B)

こんな感じで192.168.15.0/24のIPが自分の端末に割り当てられていたら良い。


(10)ほかの端末への接続テスト
試しに接続先ネットワークに存在する機器にpingをとばすなどして確認します。

RTX1000が192.168.15.254なのでテスト。

$ ping 192.168.15.254
PING 192.168.15.254 (192.168.15.254) 56(84) bytes of data.
64 bytes from 192.168.15.254: icmp_req=1 ttl=64 time=25.0 ms
64 bytes from 192.168.15.254: icmp_req=2 ttl=64 time=27.2 ms
64 bytes from 192.168.15.254: icmp_req=3 ttl=64 time=25.8 ms
64 bytes from 192.168.15.254: icmp_req=4 ttl=64 time=29.4 ms
^C
--- 192.168.15.254 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 25.001/26.870/29.408/1.675 ms

成功。

別の端末(192.168.15.1)があるのでそれにもテスト。

$ ping 192.168.15.1
PING 192.168.15.1 (192.168.15.1) 56(84) bytes of data.
64 bytes from 192.168.15.1: icmp_req=1 ttl=127 time=24.5 ms
64 bytes from 192.168.15.1: icmp_req=2 ttl=127 time=27.8 ms
64 bytes from 192.168.15.1: icmp_req=3 ttl=127 time=24.9 ms
64 bytes from 192.168.15.1: icmp_req=4 ttl=127 time=28.4 ms
^C
--- 192.168.15.100 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 24.555/26.460/28.429/1.719 ms

ルーティングが上手くいっているので他の端末にもつながりました。
RTX1000にしかpingが通らない場合は(7)ルーティング設定を見直しましょう。

これでおしまい。
DebianからVPN経由で別の場所の端末にアクセスできるようになりました。