Catch up with the original.

Submitted by: Takashi Saeki <saeki@saskg.semicon.sony.co.jp>
This commit is contained in:
Hiroyuki Hanai 1997-03-15 06:57:56 +00:00
parent e457979c0d
commit f9ce14711a

View File

@ -1,11 +1,13 @@
<!-- $Id: userppp.sgml,v 1.4 1997/02/22 13:02:20 peter Exp $ -->
<!-- $Id: userppp.sgml,v 1.5 1997/02/25 04:59:30 hanai Exp $ -->
<!-- The FreeBSD Japanese Documentation Project -->
<!-- Original revision: 1.12 -->
<!-- Original revision: 1.13 -->
<sect> ユーザ PPP のセットアップ <label id="userppp">
<p><em>原作: &a.nik;<newline>
28 July 1995</em>.
<p><em>更新: &a.brian;<newline>
14 March 1997</em>.
<p><em>訳: &a.saeki;<newline>
11 November 1996</em>.
@ -44,7 +46,7 @@
以降では, ユーザ ppp と他の PPP クライアント / サーバソフトウェアとを
区別する必要がないので, ユーザ ppp を単に ppp とだけ呼びます.
特に断らない限り, このセクションのすべてのコマンドは root 権限で
実行されるべきです.
実行する必要があります.
このセクションでアスタリスクマーク (*) のついている部分は不完全です.
コメントや提案は歓迎しますので, &a.nik; まで送ってください.
@ -75,7 +77,7 @@
<item> 一つ以上のネームサーバの IP アドレス
<item> もしプロバイダが固定の IP アドレスとホスト名を割り当ててくれるなら,
同様にそれも必要でしょう. そうでなければ, どの IP アドレス範囲から
それも同様に必要でしょう. そうでなければ, どの IP アドレス範囲から
割り当てがおこなわれるかを知っておく必要があるでしょう.
</itemize>
@ -92,18 +94,19 @@
<sect1><heading>ppp 対応カーネルの構築 </heading>
<p> 説明でも述べているように, ``ppp'' はカーネルの ``tun'' デバイスを使います.
そのため, このデバイスがカーネルに組み込まれていることの確認が不可欠です.
そのため, このデバイスがカーネルに組み込まれているかどうか
確認しておかなくてはいけません.
これを確認するためには, カーネルコンパイルディレクトリ
これを確認するには, カーネルコンパイルディレクトリ
(おそらく /sys/i386/conf) に移動して, カーネルコンフィグレーション
ファイルを調べます. 以下の行がどこかに含まれている必要があります.
<tscreen><verb>
pseudo-device tun 1
</verb></tscreen>
元々の GENERIC カーネルは標準でこれを含んでいますので, カスタムカーネルを
インストールしていなければ, 何も変更する必要はありません.
インストールしているのでなければ, 何も変更する必要はありません.
あなたのカーネルコンフィグレーションファイルに
この行が含まれていなければ, この行を追加して
この行が含まれていなかったら, この行を追加して
カーネルの再コンパイルとインストールをおこなう必要があります.
この新しいカーネルを使ってブートしてください.
カーネルコンフィグレーションの詳細については,
@ -112,7 +115,7 @@ pseudo-device tun 1
<sect1><heading>tun デバイスのチェック </heading>
<p> 私は一つの ``tun'' デバイス (tun0) による ppp 経験しかありません.
<p> 私は一つの ``tun'' デバイス (tun0) による ppp を使った経験しかありません.
より多くのデバイスを使う場合 (すなわち, カーネルコンフィグレーション
ファイルで疑似デバイスの行に `1' 以外の数値が指定されている場合),
以下のすべての ``tun0'' に対する参照を, あなたが使うデバイスの番号に
@ -127,22 +130,22 @@ pseudo-device tun 1
<sect1><heading>PPP の設定 </heading>
<p> これが問題の核心です.
<p> これが一番重要な部分です.
まぎらわしいことに, ユーザ ppp と pppd (カーネルレベルの PPP 実装) は
ともに, 設定ファイルが /etc/ppp に置かれていると仮定しているようです.
しかし, 提供されているサンプル設定ファイルはユーザ ppp 用のものですので,
参照のため手元に置いておきます.
これをおこなう最も簡単な方法は, 以下の通りです:
まぎらわしいことに, ユーザ ppp と pppd (カーネルレベルの PPP 実装) は,
どちらも設定ファイルが /etc/ppp に置かれていると仮定しているようです.
しかし, 提供されているサンプル設定ファイルはユーザ ppp 用のものです.
後で参照できるようにこれを保存しておきます.
最も簡単な方法は, 以下の通りです:
<tscreen><verb>
# cd /etc
# mv ppp ppp.orig
# mkdir ppp
</verb></tscreen>
ppp を設定するためには, 必要に応じて一~三つのファイルを
ppp を設定するためには, 必要に応じて一~三つのファイルを
編集する必要があります. 書き込む内容はプロバイダが静的に IP アドレスを
割り当てる (すなわち, 一つの IP アドレスが与えられて, 常にそれを使う) か,
または動的に IP アドレスを割り当てる (すなわち, PPP セッション毎に
割り当てる (つまり, 固定の IP アドレスを一つ与えられて, 常にそれを使う) か,
または動的に IP アドレスを割り当てる (つまり, PPP セッション毎に
IP アドレスが異なる可能性がある) かにある程度依存します.
しかし, 静的な IP アドレスを使うか動的な IP アドレスを使うかにかかわらず,
@ -151,8 +154,8 @@ pseudo-device tun 1
<sect2><heading>resolver(5) の設定 </heading>
<p>リゾルバ (resolver) はネットワーキングシステムの一部分で, IP アドレスと
ホスト名の変換をおこないます. これは, IP アドレスとホスト名を対応づける
マップを二つの場所のうちの一つから探すように設定できます.
ホスト名の変換をおこないます. これは, IP アドレスとホスト名を
対応づけるマップを二つの場所のうちの一つから探すように設定できます.
一つめの場所は <tt>/etc/hosts</tt> (<tt>man 5 hosts</tt>) と呼ばれる
ファイルです.
@ -161,10 +164,10 @@ pseudo-device tun 1
越えています.
リゾルバはマッピングをおこなうシステムコールの集合です.
どこからマッピング情報を得ればよいかはあなたが指示しなければなりません.
どこからマッピング情報を得るのかは, あなたが指示する必要があります.
これは <tt>/etc/host.conf</tt> ファイルを編集することでおこないます.
混乱する可能性があるので, このファイルを <tt>/etc/hosts.conf</tt> と
呼んは <bf> いけません </bf> (余分な ``s'' に注意).
混乱の元ですので, このファイルを <tt>/etc/hosts.conf</tt> と
呼んだりしては <bf> いけません </bf> (余分な ``s'' に注意).
このファイルは以下の 2 行を含んでいるはずです.
<tscreen><verb>
@ -185,18 +188,18 @@ namedflags="NO"
<sect2><heading>/etc/hosts(5) ファイルの作成 </heading>
<p> このファイルはローカルネットワーク上に存在するマシンの IP アドレスと
ホスト名を含んでいるはずです. 最低でも ppp を動作させるマシンのエントリ
んでいなければなりません. あなたのマシンのホスト名が foo.bar.com で,
ホスト名を含んでいるはずです. 最低でも ppp を動作させるマシンのエントリ
まれている必要があります. あなたのマシンのホスト名が foo.bar.com で,
IP アドレスが 10.0.0.1 であると仮定すると, <tt>/etc/hosts</tt> は
以下の行を含んでいなければなりません:
以下の行を含んでいなければいけません:
<tscreen><verb>
127.0.0.1 localhost
10.0.0.1 foo.bar.com foo
</verb></tscreen>
最初の行は別名 ``localhost'' を現在のマシンの同義語として定義しています.
固有の IP アドレスによらず, この行の IP アドレスは常に 127.0.0.1 で
なければなりません. 二つめの行はホスト名 ``foo.bar.com''
(そして別名 ``foo'') を IP アドレス 10.0.0.1 にマップします.
マシン固有の IP アドレスが何であっても, この行の IP アドレスは常に
127.0.0.1 でなければいけません. 二つめの行はホスト名 ``foo.bar.com''
(別名 ``foo'') を IP アドレス 10.0.0.1 にマップします.
もしプロバイダが固定の IP アドレスを割り当ててくれるなら,
それを 10.0.0.1 のかわりに使ってください.
@ -207,12 +210,12 @@ namedflags="NO"
<sect2><heading> /etc/resolv.conf ファイルの作成 </heading>
<p><tt>/etc/resolv.conf</tt> はネームサーバをそのマシンで走らせていない場合に
必要なる特別な情報を含んでいます. これは実際のネームサーバの位置を
必要なる特別な情報を含んでいます. これは実際のネームサーバの位置を
リゾルバルーチンに指示したり, その他いくつかの情報を指定したりします.
少なくとも <tt>/etc/resolv.conf</tt> は問い合わせ可能なネームサーバを
示す 1 行を含んでいる必要があります.
これは (ホスト名ではなく) IP アドレスで書かれていなければなりません.
これは (ホスト名ではなく) IP アドレスで書かなければいけません.
私の <tt>/etc/resolv.conf</tt> は以下の行を含んでいます:
<tscreen><verb>
nameserver 158.152.1.193
@ -228,7 +231,7 @@ nameserver 158.152.1.65
一つめのファイルは <tt>ppp.conf</tt> です. 以下の例と似たような
ものになるでしょう. ``:'' で終る行は 1 カラム目から始まり, その他の行は
この例の通りにインデントされるべきだということに注意してください.
この例の通りにインデントされている必要があるということに注意してください.
<tt>/etc/ppp/ppp.conf</tt>
<tscreen><verb>
@ -244,6 +247,9 @@ nameserver 158.152.1.65
9 set login "TIMEOUT 10 gin:-BREAK-gin: foo word: bar col: ppp"
10 set timeout 120
11 set ifaddr x.x.x.x y.y.y.y
12 delete ALL
13 add 0 0 HISADDR
14 set openmode active
</verb></tscreen>
行番号はファイルには含めないでください. これは説明のためのものです.
@ -257,16 +263,13 @@ nameserver 158.152.1.65
<tag/Line 3:/ 接続速度 (DTE 速度) を設定します.
<tag/* Lines 4 and 5:/ 私はこれらの行がどんな影響を持つかを正確には知りません.
<tag/Line 4:/ LQR を要求しないように指示します. LQR とは接続相手がダウン
していないことを確認するために ppp で使用されるプロトコルです.
訳者注: LQR 要求および受付を禁止します.
これを有効にすると, 定期的に LQR パケットを送って
相手側が正常に動作しているかどうかを確認します.
LQR が使えない場合は LCP ECHO を使って確認をおこないます.
LQR の詳細については RFC1333 を参照してください.
<tag/Line 5:/ 接続相手からの LQR 要求を受け付けないように指示します.
<tag/Line 6:/ ダイアルスクリプトです. ユーザ ppp は <tt>chat(8)</tt> 言語を
使用します. この言語の仕様についての情報はマニュアルを
使用します. この言語の仕様に関する情報についてはマニュアルを
参照してください.
<tag/Line 7:/ 接続するプロバイダの名前を ``provider'' として指定します.
@ -283,7 +286,7 @@ login: foo
password: bar
protocol: ppp
</verb></tscreen>
このスクリプト必要に応じて書き換える必要があるでしょう.
このスクリプト必要に応じて書き換える必要があるでしょう.
これは <tt>chat(8)</tt> 言語で書かれています.
<tag/Line 10:/ デフォルトのタイムアウトを (秒数で) 設定します.
@ -294,33 +297,60 @@ protocol: ppp
プロバイダに割り当てられた IP アドレスで置き換えてください.
文字列 y.y.y.y はプロバイダによりゲートウェイとして指示された
IP アドレスで置き換えてください.
<tag/Line 12:/ この PPP 接続で使用する tun デバイスに関する,
既存の全ルーティングテーブルエントリを削除します.
<tag/Line 13:/ プロバイダ側の IP アドレスをデフォルトルートに設定します.
<tag/Line 14:/ こちら側からネゴシエーションを開始するように指示します.
これは接続相手が自分からネゴシエーションを開始するように
設定されている場合には必要ありませんが, 両方とも自分から
Line Control Protocol (LCP) を開始するように設定されていても
何も問題はありません.
</descrip>
次に <tt>/etc/ppp/ppp.linkup</tt> ファイルを編集しなければなりません:
次に <tt>/etc/ppp/ppp.linkup</tt> ファイルを編集します:
<tscreen><verb>
x.x.x.x:
delete ALL
add 0 0 HISADDR
</verb></tscreen>
先ほどと同じように x.x.x.x をあなたの IP アドレスで置き換えます.
このファイルは, あなたのマシンからプロバイダ (HISADDR マクロは
プロバイダのアドレスで自動的に置き換えられます) へのルートを
デフォルトルートとして自動的に追加するのに使われます.
このファイルは, この PPP 接続に関する既存のルートを自動的に
全部削除したり, あなたのマシンからプロバイダへのルート
(HISADDR マクロはプロバイダのアドレスで自動的に置き換えられます) を
デフォルトルートとして追加するのに使われます.
プロバイダが静的な IP アドレスを割り当ててくれるなら, 実は
<tt>/etc/ppp.linkup</tt> ファイルにエントリを書く必要はありません.
しかしもう一度言いますが, 書いてあっても何の問題もありません.
最後に, <tt>/etc/ppp/ppp.secret</tt> ファイルを作成します.
同じ ppp システムを使う他のユーザの不正使用を防ぐためパスワードを
設定します. どれだけの人がこの ppp システムを触るかによって,
同じ ppp システムを使う他のユーザによる不正使用を防ぐためのパスワードを
設定します. どれだけの人がこの ppp システムを使うかによっては,
これを設定したいと思うかもしれません.
<sect1><heading>PPP と動的 IP 設定 </heading>
<!-- XXX -->
<p> プロバイダから静的な IP アドレスの割り当てを受けていない場合,
ローカル IP アドレスとして 0 を指定することで <tt>ppp</tt> が
リモートホストとの交渉によりローカルアドレスを決定するように設定できます.
<p> プロバイダが静的な IP アドレスの割り当てをおこなわない場合,
<tt>ppp</tt> がリモートホストと交渉してローカルアドレスを決定するように
設定することができます. これは起動時には「仮定」した IP アドレスを使い,
接続時に LCP を使って ppp が IP アドレスを正しく設定できるように
しておくことで実現されます.
<tscreen><verb>
set ifaddr 0 0
ifaddr 10.0.1.1/0 10.0.1.2/0
delete ALL
add 0 0 HISADDR
</verb></tscreen>
詳細については <tt>ppp(8)</tt> のマニュアルを参照してください.
どちらの IP アドレスに対しても 0 を指定するべきでは「ありません」.
もし 0 を指定すると, ppp が正しい初期エントリをルーティングテーブルに
設定することができなくなるでしょう.
詳細なサンプルについては, <tt>/etc/ppp/ppp.conf.sample</tt> ファイルの
pmdemand エントリと <tt>/etc/ppp/ppp.linkup.sample</tt> とを
参照してください.
<sect1><heading> システムの最終設定 </heading>
@ -334,58 +364,47 @@ set ifaddr 0 0
hostname=foo.bar.com
</verb></tscreen>
次に network_interfaces 変数を探し, tun0 デバイスがリストに追加されて
いることを確認します. 私の設定では以下のようになっています.
「いない」ことを確認します. 私の設定では以下のようになっています.
<tscreen><verb>
network_interfaces="lo0 tun0 ep0"
network_interfaces="lo0 ep0"
</verb></tscreen>
他に私はイーサネットカード (ep0) も持っているので, 同様に設定しています.
私はイーサネットカード (ep0) も持っているので, このように設定しています.
次に tun0 デバイスのための ifconfig 行を追加します.
それは以下のようなものになるでしょう.
以下のようにルータプログラムを ``NO'' に設定します.
<tscreen><verb>
ifconfig_tun0="inet foo.bar.com y.y.y.y netmask 0xffffffff"
router=NO
</verb></tscreen>
先ほどと同じように, ``foo.bar.com'' はあなたのホスト名に,
y.y.y.y はプロバイダのゲートウェイの IP アドレスに, 0xffffffff は
(16 進で) プロバイダから指定されたネットマスクに変更します.
ネットマスクとしては以下の二つの値がよく用いられます.
<tscreen><verb>
255.255.255.255 = 0xffffffff
255.255.255.0 = 0xffffff00
</verb></tscreen>
routed フラグを以下のように ``-s'' に設定します.
<tscreen><verb>
routedflags=-s
</verb></tscreen>
``sendmail_flags'' 行が ``-q'' オプションを含まないようにしておくことは,
おそらく, やっておくだけの価値があるでしょう.
さもなければ, ネットワークからアドレスを引こうとして sendmail が
時々発信をおこなってしまうでしょう. 私の sendmail 行は次の通りです.
<tt>routed</tt> は, せっかく ppp が作成したルーティングテーブル
エントリを削除してしまう場合がありますので, これを (デフォルトの)
<tt>routed</tt> のままにしておかないことが重要です.
``sendmail_flags'' 行が ``-q'' オプションを含まないように
設定しておいた方がよいでしょう. さもないと, sendmail が
アドレスを調べるために発信をおこなってしまう場合があります.
私の sendmail 行は次の通りです.
<tscreen><verb>
sendmail_flags="-bd"
</verb></tscreen>
この結果, 私は PPP リンクを立ち上げた時はいつも以下のようにタイプして,
sendmail に mailqueue を調べ直させなければなりません.
結果として, PPP リンクを立ち上げた時はいつも以下のようにタイプして
sendmail に mailqueue を調べ直させるようにしています.
<tscreen><verb>
# /usr/sbin/sendmail -q
</verb></tscreen>
これが静的 IP アドレスで PPP を動作させるために必要なすべてのはずです.
後はマシンをリブートするだけです. スタートアップの間に tun0 デバイスが
検出され, 以下のような 2 行が表示されると思います.
<tscreen><verb>
tun0: flags=51<UP,POINTOPOINT,RUNNING> mtu 1500
inet x.x.x.x --> y.y.y.y netmask 0xffffffff
</verb></tscreen>
この時点で, ppp は完全に動作するはずです. 以下のうち好きなほうを
タイプしてください.
こうするのが嫌ならば, SMTP トラフィックをブロックするように
"dfilter" を設定しておくこともできます.
詳細についてはサンプルファイルを参照してください.
これで PPP を動作させるために必要な設定はほとんど終了しました.
後はマシンをリブートするだけです.
さあ, どちらでもお好みのほうをタイプしてください.
<tscreen><verb>
# ppp
</verb></tscreen>
その後 PPP セッションを開始させるために ``dial provider'' をタイプします.
または, 外向きのトラフィックが発生した時に ppp が自動的にセッションを
確立してくれるようにしたければ, 以下タイプします.
続いて PPP セッションを開始させるために ``dial provider'' をタイプします.
これとは別に, 外部へのトラフィックが発生した時に ppp が自動的に
セッションを確立してくれるようにしたければ, 以下のようにタイプします.
<tscreen><verb>
# ppp -auto provider
</verb></tscreen>
この行を <tt>/etc/rc.local</tt> ファイルに追加しておくのも良いでしょう.
この行を <tt>/etc/rc.local</tt> ファイルに追加しておいても良いでしょう.