File: pppoe-relay.8

package info (click to toggle)
manpages-ja 0.5.0.0.20180315%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 28,516 kB
  • sloc: perl: 161; makefile: 101
file content (153 lines) | stat: -rw-r--r-- 6,433 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
.\" $Id: pppoe-relay.8,v 1.6 2002/04/09 17:28:38 dfs Exp $ 
.\" LIC: GPL
.\"
.\" Japanese Version Copyright (c) 2001 Yuichi SATO
.\"         all rights reserved.
.\" Translated Sun Oct 14 01:12:31 JST 2001
.\"         by Yuichi SATO <ysato@h4.dion.ne.jp>
.\"
.\"WORD:
.\"
.TH PPPOE-RELAY 8 "26 January 2001"
.\""
.UC 4
.SH 名前
pppoe-relay \- ユーザー空間 PPPoE リレーエージェント
.SH 書式
.B pppoe-relay \fR[\fIoptions\fR]

.SH 説明
\fBpppoe-relay\fR は Linux で使われる
PPPoE (Point-to-Point Protocol over Ethernet) の
ユーザー空間リレーエージェントである。
\fBpppoe-relay\fR はクライアント \fBpppoe\fR と
サーバー \fBpppoe-server\fR と連携して動作する。
\fBpppoe-relay\fR の動作についての詳細は、
このマニュアルで後にでてくる「動作」のセクションを参照すること。

.SH オプション
.TP
.B \-S \fIinterface\fR
イーサーネットインターフェース \fIinterface\fR を
\fBpppoe-relay\fR が管理するインターフェースのリストに追加する。
PPPoE サーバーだけが、このインターフェースに接続できる。

.TP
.B \-C \fIinterface\fR
イーサーネットインターフェース \fIinterface\fR を
\fBpppoe-relay\fR が管理するインターフェースのリストに追加する。
PPPoE クライアントだけが、このインターフェースに接続できる。

.TP
.B \-B \fIinterface\fR
イーサーネットインターフェース \fIinterface\fR を
\fBpppoe-relay\fR が管理するインターフェースのリストに追加する。
PPPoE クライアントとサーバーの両方が、このインターフェースに接続できる。

.TP
.B \-n \fInum\fR
最大 \fInum\fR 個の PPPoE セッションを許可する。
指定されない場合のデフォルトは 5000 である。
\fInum\fR は 1 〜 65534 の範囲である。

.TP
.B \-i \fItimeout\fR
セッションのアイドルタイムアウトを指定する。
セッションの接続先と接続元の両方が \fItimeout\fR 秒以上
アイドルになっていた場合、そのセッションを終了する。
\fItimeout\fR を 0 に指定すると、
アイドルによりセッションが終了されることはない。

アイドルセッションの満了をチェックするルーチンは、
最も頻繁に実行されたとしても 30 秒に 1 回であるので、
最も短いタイムアウトの値もこれに近い。
\fItimeout\fR のデフォルトの値は 600 秒 (10 分) である。

.TP
.B \-F
\fB\-F\fR オプションを指定すると、\fBpppoe-relay\fR は
バックグラウンドに fork \fIされず\fR、
フォアグラウンドに残ったままになる。

.TP
.B \-h
\fB\-h\fR オプションを指定すると、
使用法についての簡単なメッセージを表示して終了する。

.SH 動作

\fBpppoe-relay\fR は、\fB-B\fR または \fB-C\fR オプションで指定された
全てのインターフェースに入ってくる PPPoE PADI フレームを待ち受ける。
PADI フレームが入ってくると、
\fBpppoe-relay\fR は Relay-Session-ID タグを追加し、
\fB-B\fR または \fB-S\fR オプションで指定された
全てのインターフェースに PADI をブロードキャストする。
(ただし PADI フレームが入ってきたインターフェースは除く)。

受信した全ての PADO フレームは、
(送られてきた PADI フレームに有効な Relay-Session-ID タグがあると仮定して)
PADI を送ってきたクライアントにリレーして戻される。
同様に、クライアントからの PADR フレームは、
マッチしたアクセス集信装置にリレーして戻される。

PADS フレームを受信すると、\fBpppoe-relay\fR は
接続元と接続先の MAC アドレスとセッション ID を
ハッシュテーブルに入れる。
アクセス集信装置が監視するセッション ID は、
クライアントが監視するセッション ID と異なるかもしれない。
\fBpppoe-relay\fR はセッション ID が重複しないように
セッションの番号をふり直さなければならない。
接続元または接続先がセッションフレームを送信すると、
\fBpppoe-relay\fR はハッシュテーブルにあるセッションエントリを参照し、
適切な接続相手にフレームを受け渡す。

PADT フレームを受信すると、\fBpppoe-relay\fR は
接続相手に PADT フレームを受け渡し、
ハッシュテーブルからセッションエントリを削除する。

クライアントやサーバーがクラッシュした場合 (またはフレームが失われた場合)、
PADT フレームは送信されず、\fBpppoe-relay\fR のハッシュテーブルは
失効したセッションで一杯になってしまう。
そのため、セッションを掃除するルーチンが定期的に実行され、
ハッシュテーブルから古くなったセッションを削除する。
\fItimeout\fR 秒間データが流れていない場合、
そのセッションは「古くなった」とされる。
タイムアウトによりセッションが削除される場合、
セッションが kill されたことを知らせるために、
接続元と接続先に PADT フレームが送られる。

.SH 起動方法の例

.nf
pppoe-relay -C eth0 -S eth1
.fi

上記の例では、eth0 ネットワーク上の PPPoE クライアントと
eth1 ネットワーク上の PPPoE サーバーの間でフレームが受け渡される。

.nf
pppoe-relay -B eth0 -B eth1
.fi

これは透過的なリレーの例である -- 
eth0, eth1 ネットワークとクライアント・サーバーの
どの組み合わせでもフレームが受け渡される。

.nf
pppoe-relay -S eth0 -C eth1 -C eth2 -C eth3
.fi

この例では、eth0 ネットワーク上のサーバーと
eth1, eth2, eth3 ネットワーク上のクライアントの間で
フレームが受け渡される。

.SH 著者
\fBpppoe-relay\fR は David F. Skoll <dfs@roaringpenguin.com> によって
作成された。

\fBpppoe\fR のホームページは
\fIhttp://www.roaringpenguin.com/pppoe/\fR である。

.SH 関連項目
adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
pppoe(8), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-server(8)