Solstice PPP 3.0.1 管理者ガイド

IP ルーティングの確認

PPP リンクを通して IP 接続を実現する IP ルーティング機能は、Solstice PPP のような製品で問題が発生しやすい部分です。IP ルーティングにおける問題を検出する手順は、以下のとおりです。

  1. ifconfig(1M) を使用してプロトコルステータスを確認します。

  2. ping(1M) を使用して IP の接続性を確認します。

  3. netstat(1M) を使用してルーティングテーブルを確認します。

  4. snoop(1M) を使用してパケットフローを確認します。

プロトコルステータスの確認 (ifconfig)

以下のように ifconfig(1M) を使用して、Solstice PPP における IP インタフェースが構成されていることを確認します。


prompt# /usr/sbin/ifconfig -a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
	inet 127.0.0.1 netmask ff000000
le0: flags=863<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
	inet 129.x.x.117 netmask ffffff00 broadcast 129.x.x.255
	ether 8:0:20:10:c2:b1
ipdptp0: flags=8d0<POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
	inet 129.x.x.117 --> 129.x.x.253 netmask ffffff00
	ether 0:0:0:0:0:0
ipdptp1: flags=28d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>
	inet 129.x.x.117 --> 129.x.x.38 netmask ffffff00
	ether 0:0:0:0:0:0 

IP の接続性の確認 (ping)

以下のように ping(1M) を使用して、リモートホストとの接続が可能であることを確認します。


prompt# /usr/sbin/ping -r remote_host

ファイル /var/opt/SUNWconn/ppp.log の接続ステータスを調べます。メッセージ "PPP error on ipdptp1: Negotiation of mandatory options failed" が出力され、LCP ネゴシエーションが失敗した場合は、リンク両端のインタフェースに使用している IP アドレス同士が一貫していない可能性があります。

ルーティングテーブルの確認 (netstat)

以下のように netstat(1M) を使用して、ローカルホストとリモートホストのネットワークアドレスを確認します。


prompt# /usr/sbin/netstat -i
lo0	8232	loopback	localhost	4631890	0	4631890	0	0	0
le0	1500	lab	local	5370160	15	2153627	273	430451	0
ipdptp0	1500	remote	local	0	0	0	0 	0	0

ローカルアドレスとリモートアドレスが正しいことを確認します。ホスト名は、ローカルファイル /etc/hosts において IP アドレスとして解釈処理するか、またはネームサービス (NIS/NIS+ または DNS) によって IP アドレスとして解釈処理する必要があります。同期リンクの IP インタフェースは、ネームサービスが利用可能となる前に Solstice PPP によって初期化されます。したがって、これらのファイルのホスト名を /etc/hosts において解釈処理する必要があります。

以下のように netstat(1M) を使用して、ルーティングテーブルを確認します。


prompt# /usr/sbin/netstat -r

以下のように入力して、要求する送信経路がルーティングテーブルに含まれていない場合は、ルーティングデーモン in.routed がマシン上で動作していることを確認してください。


prompt# ps -ef | grep in.routed
owner 12481  3812  7 23:06:08 pts/6    0:00 grep in.routed

パケットフローの確認 (snoop)

以下のように snoop(1M) を使用して、パケットが送信されていることを確認します。


prompt# /usr/sbin/snoop -d ipdptp0
local -> remote         RSHELL C port=1017   >0   'H   ![    ?
local -> remote         RSHELL C port=1017   ,(!¥nM/            
local -> remote         RSHELL C port=1017   Y@#K /  ]0#Z    ] 'Z
local -> remote         RSHELL C port=1017   .?;-)P3O89, "  2 H8"
local -> remote         RSHELL C port=1017   @         ¥#¥  
.
.
.