blob: 3b9e903d9b47237d100981293ebf08febe03a114 [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
Holger Hans Peter Freyther9c7fd8e2014-12-04 16:32:37 +010098the SGSN. Runtime errors are reported using the Osmocom logging
99framework.
jjakod1afd812003-07-06 17:43:17 +0000100
101Typically
102.B ggsn
103will be deployed with two Ethernet interfaces. One for the Gn/Gp
104interface, and one for the Gi interface. Policy routing and firewall
105rules should be used in order to separate Gi traffic from Gn/Gp
106traffic.
107
108.SH OPTIONS
109.TP
110.BI --help
111Print help and exit.
112
113.TP
114.BI --version
115Print version and exit.
116
117.TP
118.BI --fg
119Run in foreground (default = off)
120
121.TP
122.BI --debug
123Run in debug mode (default = off)
124
125.TP
126.BI --conf " file"
127Read configuration
128.I file
129(default = /etc/ggsn.conf) where each line corresponds to one command
130line option, but with the leading '--' removed. Command line options
131override the options given in the configuration file.
132
133.TP
134.BI --pidfile " file"
135Filename of process id
136.I file
137(default = /var/run/ggsn.pid)
138
139.TP
140.BI --statedir " path"
141.I path
142to directory of nonvolatile data (default = /var/lib/ggsn/)
143
144.TP
145.BI --listen " host"
146Local interface IP address to use for the Gn/Gp interface. This option
147must be specified. For security issues it is not possible to use
148INADDR_ANY.
149
150.TP
151.BI --net " net"
152Network address of the Gi interface (default = 192.168.0.0/24). The
153network address is set during initialisation when
154.B ggsn
155establishes a tun device for the Gi interface.
156
157.TP
158.BI --ipup " script"
159Script executed after the Gi tun network interface has been brought
160up. Executed with the following parameters: <devicename> <ip address>
161
162.TP
163.BI --ipdown " script"
164Script executed after the Gi tun network interface has been taken
165down. Executed with the following parameters: <devicename> <ip
166address>
167
168.TP
169.BI --dynip " net"
170Dynamic IP address pool. Specifies a pool of dynamic IP addresses. If
171this option is omitted the network address specified by the
172.BI --net
173option is used for dynamic IP address allocation.
174
175.TP
176.BI --pcodns1 " host"
177PCO DNS Server 1 (default = 0.0.0.0). PCO stands for Protocol
178Configuration options, and is part of the GPRS protocols. It is used
179to inform the mobile station about the DNS address to use for host
180name resolution.
181
182.TP
183.BI --pcodns2 " host"
184PCO DNS Server 2 (default = 0.0.0.0). PCO stands for Protocol
185Configuration options, and is part of the GPRS protocols. It is used
186to inform the mobile station about the DNS address to use for host
187name resolution.
188
189.TP
190.BI --timelimit " seconds"
191Exit
192.b ggsn
193after \fIseconds\fP. Used for debugging.
194
195
196.SH FILES
197.I /etc/ggsn.conf
198.RS
199The configuration file for
200.B ggsn.
201.RE
202.I /var/run/ggsn.pid
203.RS
204Process ID file.
205.RE
206.I /var/lib/ggsn
207.RS
208Directory holding nonvolatile data.
209.RE
210
211.SH BUGS
212Report all bugs to the OpenGGSN bug tracking list at
213.I http://sourceforge.net/projects/ggsn/
214
215.B ggsn
216has very limited management support. Currently both SNMP as well as
217billing mechanisms are missing.
218
219
220.SH "SEE ALSO"
Holger Hans Peter Freyther9c7fd8e2014-12-04 16:32:37 +0100221.BR sgsnemu (8)
jjakod1afd812003-07-06 17:43:17 +0000222
223.SH NOTES
224.LP
225
226Besides the long options documented in this man page
227.B ggsn
228also accepts a number of short options with the same functionality. Use
229.B ggsn --help
230for a full list of all the available options.
231
232The TUN/TAP driver is required for proper operation of
233.B ggsn.
234For linux kernels later than 2.4.7 the TUN/TAP driver is included in the kernel, but typically needs to be loaded manually with
235.B modprobe tun.
236For automatic loading the line
237.B alias char-major-10-200 tun
238can be added to
239.B /etc/modules.conf.
240For other platforms see
241.I http://vtun.sourceforge.net/tun/
242for information on how to install and configure the tun driver.
243
244.B ggsn
245uses the GPRS Tunneling Protocol (GTP) as specified by the Third
246Generation Partnership Project (3GPP). 3GPP protocols specifications
247can be found at
248.I http://www.3gpp.org
249
250.SH COPYRIGHT
251
252Copyright (C) 2002, 2003 by Mondru AB.
253
254The contents of this file may be used under the terms of the GNU
255General Public License Version 2, provided that the above copyright
256notice and this permission notice is included in all copies or
257substantial portions of the software.
258
259.SH AUTHORS
260Jens Jakobsen <jj@openggsn.org>