最初にVPNをテストする際には、以下のようにtincをデバッグモードにしてフォアグラウンドで実行し、問題なく接続できるか確認するとよい。tincdを次のようにして実行したコンソールでCtrl+cキーを押すと、tincはverboseモードになり、パケットの取得や送出がわかるようになる。
/usr/sbin/tincd -n my_home_vpn -D
tincによる接続が確立されると、マシンに新しいネットワークインタフェースが設定され、VPN上の各マシンへの新たなルートが出来上がる。tincによってVPN接続が確立されているときのノートPC側のネットワークの設定内容を以下に示す。
# ifconfig
eth1 Link encap:Ethernet HWaddr ...
...
my_home_vpn Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.11.7 P-t-P:192.168.11.7 Mask:255.255.255.0
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
...
my-home-vpn * 255.255.255.0 U 0 0 0 my_home_vpn
link-local * 255.255.0.0 U 0 0 0 eth1
# ping 192.168.11.100
PING 192.168.11.100 (192.168.11.100) 56(84) bytes of data.
64 bytes from 192.168.11.100: icmp_seq=1 ttl=64 time=1.77 ms
64 bytes from 192.168.11.100: icmp_seq=2 ttl=64 time=0.659 ms
--- 192.168.11.100 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.659/1.216/1.773/0.557 ms
# ssh hachiko@192.168.11.100
...
tinc.confファイルの内容が単純で、tincのhostsディレクトリ内にある各ファイルの記述をマシンごとに変えなくてよいので、2台のホストによるVPNの設定はごく短時間で済む。マスカレードによるファイアウォールで保護されたマシンでtincによるVPNを構築する設定例が参考になるだろう。また、tincを使ってネットワークスイッチの動作を再現し、VPNを特殊なネットワークアプリケーションで使うことも可能だ。割り当てられるIPアドレスが不確実になりがちなノートPCやモバイル機器上のサービスに接続できるtincは、すでにネットワークのセキュリティが(WPA2などで)保護されている場合にも役立つ。
Ben Martinは10年以上前からファイルシステムに携わっている。博士号を持ち、現在はlibferris、各種ファイルシステム、検索ソリューションを中心としたコンサルティング業務に従事。
