blob: 7a98281d07f2e90e5d73b96fa6b06a9651231c2d [file] [log] [blame]
jjakod1afd812003-07-06 17:43:17 +00001
2.\" * OpenGGSN - Gateway GPRS Support Node
3.\" * Copyright (C) 2002, 2003 Mondru AB.
4.\" *
5.\" * The contents of this file may be used under the terms of the GNU
6.\" * General Public License Version 2, provided that the above copyright
7.\" * notice and this permission notice is included in all copies or
8.\" * substantial portions of the software.
9.\" *
10.\" * The initial developer of the original code is
11.\" * Jens Jakobsen <jj@openggsn.org>
12.\" *
13.\" * Contributor(s):
14.\" *
15.\" Manual page for ggsn
16.\" SH section heading
17.\" SS subsection heading
18.\" LP paragraph
19.\" IP indented paragraph
20.\" TP hanging label
21
22.TH ggsn 8 "July 2003"
23.SH NAME
24ggsn \- Gateway GPRS Support Node.
25.SH SYNOPSIS
26.B ggsn
27\-\-help
28
29.B ggsn
30\-\-version
31
32.B ggsn
33[
34.BI \-\-fg
35] [
36.BI \-\-debug
37] [
38.BI \-\-conf " file"
39] [
40.BI \-\-pidfile " file"
41] [
42.BI \-\-statedir " file"
43] [
44.BI \-\-listen " host"
45] [
46.BI \-\-net " net"
47] [
48.BI \-\-ipup " script"
49] [
50.BI \-\-ipdown " script"
51] [
52.BI \-\-dynip " net"
53] [
54.BI \-\-statip " net"
55] [
56.BI \-\-pcodns1 " host"
57] [
58.BI \-\-pcodns2 " host"
59] [
60.BI \-\-timelimit " seconds"
61]
62.SH DESCRIPTION
63.B ggsn
64is part of the
65.B OpenGGSN
66project, and implements a Gateway GPRS Support Node. It is used by
67mobile operators as the interface between the Internet and the rest of
68the mobile network infrastructure.
69
70The GPRS functionality and protocols has been standardised by the
71Third Generation Partnership Project (3GPP). According to the 3GPP
72specifications a GGSN has two interfaces: The Gn/Gp interface and the
73Gi interface.
74
75The Gn/Gp interface can be seen as the downlink interface of the
76GGSN. It is used for communicating with the Serving GPRS Support Node
77(SGSN) which again interfaces to the radio access network. The Gn/Gp
78interface uses the GPRS tunneling protocol (GTP). User data packets
79(typically IP packets) are tunneled over GTP, which again uses UDP
80over IP.
81
82The other interface can be thought of as the uplink interface, and
83interfaces the GGSN to an external data network. Gi is most often an
84interface to the Internet.
85.B ggsn
86uses the
87.B TUN/TAP driver
88for the Gi interface. A tun network interface is established when the
89.B ggsn
90is started.
91
92.B ggsn
93will accept incoming connections from mobile stations through the
94radio access network and the SGSN. When a connection request is
95received the ggsn will allocate a dynamic IP address for the mobile
96station, and allow the mobile station to access the Gi
97interface. Connections are terminated by either the mobile station or
98the SGSN. Runtime errors are reported using the
99.B syslogd (8)
100facility.
101
102Typically
103.B ggsn
104will be deployed with two Ethernet interfaces. One for the Gn/Gp
105interface, and one for the Gi interface. Policy routing and firewall
106rules should be used in order to separate Gi traffic from Gn/Gp
107traffic.
108
109.SH OPTIONS
110.TP
111.BI --help
112Print help and exit.
113
114.TP
115.BI --version
116Print version and exit.
117
118.TP
119.BI --fg
120Run in foreground (default = off)
121
122.TP
123.BI --debug
124Run in debug mode (default = off)
125
126.TP
127.BI --conf " file"
128Read configuration
129.I file
130(default = /etc/ggsn.conf) where each line corresponds to one command
131line option, but with the leading '--' removed. Command line options
132override the options given in the configuration file.
133
134.TP
135.BI --pidfile " file"
136Filename of process id
137.I file
138(default = /var/run/ggsn.pid)
139
140.TP
141.BI --statedir " path"
142.I path
143to directory of nonvolatile data (default = /var/lib/ggsn/)
144
145.TP
146.BI --listen " host"
147Local interface IP address to use for the Gn/Gp interface. This option
148must be specified. For security issues it is not possible to use
149INADDR_ANY.
150
151.TP
152.BI --net " net"
153Network address of the Gi interface (default = 192.168.0.0/24). The
154network address is set during initialisation when
155.B ggsn
156establishes a tun device for the Gi interface.
157
158.TP
159.BI --ipup " script"
160Script executed after the Gi tun network interface has been brought
161up. Executed with the following parameters: <devicename> <ip address>
162
163.TP
164.BI --ipdown " script"
165Script executed after the Gi tun network interface has been taken
166down. Executed with the following parameters: <devicename> <ip
167address>
168
169.TP
170.BI --dynip " net"
171Dynamic IP address pool. Specifies a pool of dynamic IP addresses. If
172this option is omitted the network address specified by the
173.BI --net
174option is used for dynamic IP address allocation.
175
176.TP
177.BI --pcodns1 " host"
178PCO DNS Server 1 (default = 0.0.0.0). PCO stands for Protocol
179Configuration options, and is part of the GPRS protocols. It is used
180to inform the mobile station about the DNS address to use for host
181name resolution.
182
183.TP
184.BI --pcodns2 " host"
185PCO DNS Server 2 (default = 0.0.0.0). PCO stands for Protocol
186Configuration options, and is part of the GPRS protocols. It is used
187to inform the mobile station about the DNS address to use for host
188name resolution.
189
190.TP
191.BI --timelimit " seconds"
192Exit
193.b ggsn
194after \fIseconds\fP. Used for debugging.
195
196
197.SH FILES
198.I /etc/ggsn.conf
199.RS
200The configuration file for
201.B ggsn.
202.RE
203.I /var/run/ggsn.pid
204.RS
205Process ID file.
206.RE
207.I /var/lib/ggsn
208.RS
209Directory holding nonvolatile data.
210.RE
211
212.SH BUGS
213Report all bugs to the OpenGGSN bug tracking list at
214.I http://sourceforge.net/projects/ggsn/
215
216.B ggsn
217has very limited management support. Currently both SNMP as well as
218billing mechanisms are missing.
219
220
221.SH "SEE ALSO"
222.BR sgsnemu (8),
223.BR syslogd (8)
224
225.SH NOTES
226.LP
227
228Besides the long options documented in this man page
229.B ggsn
230also accepts a number of short options with the same functionality. Use
231.B ggsn --help
232for a full list of all the available options.
233
234The TUN/TAP driver is required for proper operation of
235.B ggsn.
236For linux kernels later than 2.4.7 the TUN/TAP driver is included in the kernel, but typically needs to be loaded manually with
237.B modprobe tun.
238For automatic loading the line
239.B alias char-major-10-200 tun
240can be added to
241.B /etc/modules.conf.
242For other platforms see
243.I http://vtun.sourceforge.net/tun/
244for information on how to install and configure the tun driver.
245
246.B ggsn
247uses the GPRS Tunneling Protocol (GTP) as specified by the Third
248Generation Partnership Project (3GPP). 3GPP protocols specifications
249can be found at
250.I http://www.3gpp.org
251
252.SH COPYRIGHT
253
254Copyright (C) 2002, 2003 by Mondru AB.
255
256The contents of this file may be used under the terms of the GNU
257General Public License Version 2, provided that the above copyright
258notice and this permission notice is included in all copies or
259substantial portions of the software.
260
261.SH AUTHORS
262Jens Jakobsen <jj@openggsn.org>