IPの実行

 IPをPPP上で実行するためには,LCPでリンクをオープンした後(認証を行うのであれば行った後)のネットワーク層プロトコル・フェーズで,IPのためのNCP(Network Control Protocol,ネットワーク制御プロトコル)であるIPCP(RFC 1332,The PPP lnternet Protcol Control Protoco)によって,ネットワークをオープン状態にしなければならない。この後,通常のIPか実行できる(図16)。

ネットワーク層プロトコル・フェーズ(IP)
図16 ネットワーク層プロトコル・フェーズ(IP)

(1)IPCP

 IPCPパケットをカプセル化したPPPフレームとICPCパケットの構造を,図17に示す。プロトコル・フイールドには,IPCPを示す値8021hが設定される。

IPCPパケットとPPPフレームの構造
図17 IPCPパケットとPPPフレームの構造

 IPCPのパケットは,LCPのパケットと同じ構造と内容です。ただし,コードは1から7まで。なお,これらのコード以外のIPCPパケットを受信した場合には,コード拒否パケットで応答しなければならない。

(2)IPCP設定オプション

 IPCP(Internet Protocol Control Protocol)設定パケットでの設定オプションには,3タイプがあるが,タイプ1は旧版への後方互換のためのオプションで,使用からはずされ,このほかにタイプ2と3とがある(図18)。

IPCP設定オプション
図18 IPCP設定オプション

 タイプ2のIP圧縮プロトコル(IP Compression Protocol)オプションは,TCP/IPヘッダを圧縮するVan Jacobson圧縮プロトコル(RFC 1144)を使用するためのもの。厳密には,この圧縮パケットが受信可能であることを相手に通知する。これを使うと,TCP/IPヘッダを3バイトにまで圧縮可能です。なお,このプロトコル使うときには,オプションを設定した相手に対して,伝送するIPデータグラムを格納したPPPフレームのプロトコル・フィールドに,値002Dhを設定して伝送する。デフオルトは,「圧縮なし」。
 タイプ3のIPアドレス・オプションでは,ネットワーク設定時に自分の希望IPアドレスを通知するか,または相手のIPアドレスを要求することが可能。設定要求パケットには,希望するIPアドレス(0以外)を指定する。
 相手のIPアドレスを要求する場合には,値が0の4バイトのIPアドレスを設定して,設定要求パケットを送る。これに対して応答側は,設定否定パケットでそのIPアドレスを設定して応答することになる。逆に,応答側として相手のIPアドレスを希望しているにもかかわらず,設定要求パケットにIPアドレス・オプションがない場合には,IPアドレス・オプションを付加した設定否定パケットで応答する。このときのIPアドレス値は,相手が受け入れられる値,または相手が設定するように指示する値0です。

(3)IPデータグラム

 IPデータグラムをカプセル化したPPPフレームを,図19に示す。PPPフレームのプロトコル・フィールドには,TCP/IPヘッダ圧縮を使用する場合には値002Dh,IPデータグラムのプロトコル・フィールドにスロットIDを設定する場合には,002Fh(非圧縮TCP),通常のIPでは0021hを指定する。
 アドレス/制御,プロトコル,FCSは,圧縮されることがあります。

IPデータグラムをカプセル化したPPPフレーム
図19 IPデータグラムをカプセル化したPPPフレーム

(4)PPP上のIPv6

 IPv6のためのNCPである,IPv6CP(IPv6 Control ProtocoD を含むIPv6をPPP上で扱うための方法は,RFC 2023(IP version 6 over PPP)で規定されている。図20に,IPv6をカプセル化したPPPフレームの構造を示す。

PPP上のIPv6CPの構造
図20 PPP上のIPv6CPの構造

 IPv6CPパケットは,PPPフレームにプロトコル・フィールド値8057hとして格納され,設定オプションを除いてIPCPと同じ内容です。設定オプションには,アドレスの自動設定を行うためにPPPリンクごとに設定される固有な32ビット値(インタフェース・トークンと言う)のネゴシエーションを行う,インタフェース・トークン・オプション(タイプ1)と,IPv6ヘッダ圧縮を設定するIPv6ヘッダ圧縮オプション(タイプ2)とがある。インタフェース・トークンとしては,LCPパケット(エコー要求・応答,廃棄要求,ID通知,残余時間通知)のマジック・ナンバーと同じように,0でない固有な値として,マシンのシリアル番号やデータリンク・アドレスなどの値を基に,ランダムに生成した値が推奨されている。
 IPv6パケットは,PPPフレームにプロトコル・フィールド値0057hとして格納される。また,IPv6をサポートするPPPフレームの情報部は,最低でも576バイト長なければならない。



PPP WAN接続の定番を理解するへ

トップページへ