Project

General

Profile

OpenBSC GPRS » History » Version 2

tnt, 02/19/2016 10:47 PM
More config ...

1 1 tnt
[[PageOutline]]
2
3
= OpenBSC GPRS/EDGE Setup page =
4
5
== Pre-requisites ==
6
7
 * A nano BTS with GPRS or EDGE support. BS-11 are not supported (yet?)
8
 * A compiled GGSN from OpenGGSN ( http://sourceforge.net/projects/ggsn/ )
9 2 tnt
 * A working and up-to-date OpenBSC (see [wiki:Building_OpenBSC])
10
   * You will need to (re-)build it after having installed OpenGGSN so that the libgtp is detected and the SGSN binary osmo-sgsn built.
11 1 tnt
12
== Setup ==
13
14
[[Image(gprs.png)]]
15
16
=== OpenBSC configuration ===
17
18 2 tnt
{{{
19
     phys_chan_config PDCH
20
}}}
21
22
{{{
23
  gprs mode gprs
24
  gprs routing area 0
25
  gprs cell bvci 2
26
  gprs nsei 101
27
  gprs nsvc 0 nsvci 101
28
  gprs nsvc 0 local udp port 23000
29
  gprs nsvc 0 remote udp port 23000
30
  gprs nsvc 0 remote ip 192.168.0.128
31
}}}
32
33
34 1 tnt
=== Osmocom SGSN configuration ===
35
36 2 tnt
{{{
37
!
38
! Osmocom SGSN configuration
39
!
40
!
41
line vty
42
 no login
43
!
44
sgsn
45
 gtp local-ip 192.168.1.128
46
 ggsn 0 remote-ip 192.168.1.129
47
 ggsn 0 gtp-version 1
48
!
49
ns
50
 timer tns-block 3
51
 timer tns-block-retries 3
52
 timer tns-reset 3
53
 timer tns-reset-retries 3
54
 timer tns-test 30
55
 timer tns-alive 3
56
 timer tns-alive-retries 10
57
 encapsulation udp local-ip 192.168.0.128
58
 encapsulation udp local-port 23000
59
 encapsulation framerelay-gre enabled 0
60
!
61
bssgp
62
!
63
}}}
64
65 1 tnt
=== OpenGGSN configuration ===
66 2 tnt
67
{{{
68
# TAG: listen
69
# Specifies the local IP address to listen to
70
listen 192.168.1.129
71
}}}
72
73
{{{
74
# TAG: dynip
75
# Dynamic IP address pool.
76
# Used for allocation of dynamic IP address when address is not given
77
# by HLR.
78
# If this option is not given then the net option is used as a substitute.
79
dynip 192.168.254.0/24
80
81
# TAG: pcodns1/pcodns2
82
# Protocol configuration option domain name system server 1 & 2.
83
pcodns1 208.67.222.222
84
pcodns2 208.67.220.220
85
}}}
86
87
=== Network configuration ===
88
89
You will also need to configure some networking rules to allow connectivity from `tun0`. Look up linux networking/nat howtos on google.
90
The basic setup for testing only in a safe environment would be :
91
92
{{{
93
bash# echo 1 > /proc/sys/net/ipv4/ip_forward
94
bash# iptables -A POSTROUTING -s 192.168.254.0/24 -t nat -o eth0 -j MASQUERADE
95
}}} 
96
97
(replace `eth0` by the interface providing your machine connectivity)
98
99
== Running ==
100
101
# FIXME
Add picture from clipboard (Maximum size: 48.8 MB)