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 |