1PPPOE-RELAY(8)              System Manager's Manual             PPPOE-RELAY(8)
2
3
4

NAME

6       pppoe-relay - user-space PPPoE relay agent.
7

SYNOPSIS

9       pppoe-relay [options]
10
11

DESCRIPTION

13       pppoe-relay  is a user-space relay agent for PPPoE (Point-to-Point Pro‐
14       tocol over Ethernet) for Linux.  pppoe-relay works in concert with  the
15       pppoe  client and pppoe-server server.  See the OPERATION section later
16       in this manual for details on how pppoe-relay works.
17
18

OPTIONS

20       -S interface
21              Adds the Ethernet interface interface to the list of  interfaces
22              managed  by pppoe-relay.  Only PPPoE servers may be connected to
23              this interface.
24
25
26       -C interface
27              Adds the Ethernet interface interface to the list of  interfaces
28              managed  by pppoe-relay.  Only PPPoE clients may be connected to
29              this interface.
30
31
32       -B interface
33              Adds the Ethernet interface interface to the list of  interfaces
34              managed  by  pppoe-relay.  Both PPPoE clients and servers may be
35              connected to this interface.
36
37
38       -n num Allows at most num concurrent PPPoE sessions.  If not specified,
39              the default is 5000.  num can range from 1 to 65534.
40
41
42       -i timeout
43              Specifies  the session idle timeout.  If both peers in a session
44              are idle for more than timeout seconds, the  session  is  termi‐
45              nated.   If timeout is specified as zero, sessions will never be
46              terminated because of idleness.
47
48              Note that the idle-session expiry routine is never run more fre‐
49              quently  than  every  30 seconds, so the timeout is approximate.
50              The default value for timeout is 600 seconds (10 minutes.)
51
52
53       -F     The -F option causes pppoe-relay not  to  fork  into  the  back‐
54              ground; instead, it remains in the foreground.
55
56
57       -h     The -h option prints a brief usage message and exits.
58
59

OPERATION

61       pppoe-relay  listens  for  incoming PPPoE PADI frames on all interfaces
62       specified with -B or -C options.  When a PADI frame appears,  pppoe-re‐
63       lay  adds  a Relay-Session-ID tag and broadcasts the PADI on all inter‐
64       faces specified with -B or -S options (except the  interface  on  which
65       the frame arrived.)
66
67       Any  PADO frames received are relayed back to the client which sent the
68       PADI (assuming they contain valid  Relay-Session-ID  tags.)   Likewise,
69       PADR  frames  from clients are relayed back to the matching access con‐
70       centrator.
71
72       When a PADS frame is received, pppoe-relay enters the  two  peers'  MAC
73       addresses  and session-ID's into a hash table.  (The session-ID seen by
74       the access concentrator may be different from that seen by the  client;
75       pppoe-relay  must  renumber sessions to avoid the possibility of dupli‐
76       cate session-ID's.)  Whenever either peer sends a session frame, pppoe-
77       relay looks up the session entry in the hash table and relays the frame
78       to the correct peer.
79
80       When a PADT frame is received, pppoe-relay relays it to  the  peer  and
81       deletes the session entry from its hash table.
82
83       If  a  client  and  server  crash (or frames are lost), PADT frames may
84       never be sent, and pppoe-relay's hash table can fill up with stale ses‐
85       sions.   Therefore,  a  session-cleaning routine runs periodically, and
86       removes old sessions from the hash  table.   A  session  is  considered
87       "old"  if no traffic has been seen within timeout seconds.  When a ses‐
88       sion is deleted because of a timeout, a PADT frame is sent to each peer
89       to make certain that they are aware the session has been killed.
90
91

EXAMPLE INVOCATIONS

93       pppoe-relay -C eth0 -S eth1
94
95       The  example above relays frames between PPPoE clients on the eth0 net‐
96       work and PPPoE servers on the eth1 network.
97
98       pppoe-relay -B eth0 -B eth1
99
100       This example is a transparent relay -- frames are relayed  between  any
101       mix of clients and servers on the eth0 and eth1 networks.
102
103       pppoe-relay -S eth0 -C eth1 -C eth2 -C eth3
104
105       This  example  relays  frames  between  servers on the eth0 network and
106       clients on the eth1, eth2 and eth3 networks.
107
108

AUTHORS

110       pppoe-relay was written by Dianne Skoll <dianne@skoll.ca>.
111
112       The pppoe home page is https://dianne.skoll.ca/projects/rp-pppoe/.
113
114

SEE ALSO

116       pppd(8), pppoe(8), pppoe-sniff(8), pppoe-server(8)
117
118
119
120
1214th Berkeley Distribution       26 January 2001                 PPPOE-RELAY(8)
Impressum