Hi
I'm trying out openGGSN, currently running it on an Ubuntu 16.04 VM in Amazon. The reason I'm doing this is part of an evaluation I'm helping out with for a customer in the Telco-industry.
I have been able to install, and run ggsn and sgsnemu to the point of sending the ECHO and creating the PDP-C (see attachment).
However, I can't see that a network interface is created after the PDP-C has been accepted. According to the README on https://github.com/osmobuntu/openggsn that should happen: "After this it will attempt to establish a pdp context. If successful it will create a local interface and set up routing."
Anyway, I have probably missed something in the setup. If you have any suggestions, that would be highly appreciated!
What I did so far is:
Install sudo apt-get update sudo apt-get install openggsn
Create "virtual" interfaces (since I'm running everything on the same machine. Not sure if this is the right way to do it though) ifconfig eth0:0 192.168.1.2 netmask 255.255.255.0 up ifconfig eth0:1 192.168.1.3 netmask 255.255.255.0 up
I also did the following steps, but I'm not sure exactly what they do... pardon my ignorance! 1. Add the following line to /etc/modules.conf: alias char-major-10-200 tun 2. depmod -a
Start GGSN ggsn -c ggsn.conf --fg -l 192.168.1.2 --net 192.168.0.0/24 --dynip 192.168.0.0/24
After this I can see the new tun0 tun0: flags=81<UP,POINTOPOINT,RUNNING> mtu 1500 inet 192.168.0.1 netmask 255.255.255.0 destination 192.168.0.1 inet6 fe80::9ea3:6876:c4ce:fc96 prefixlen 64 scopeid 0x20<link> unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 500 (UNSPEC) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 7 bytes 448 (448.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
send ECHO (successfully) sgsnemu --listen 192.168.1.3 --remote 192.168.1.2 --dns 10.20.38.51 --timelimit 10 --contexts 0
Send ECHO + Create PDP-C sgsnemu --listen 192.168.1.3 --remote 192.168.1.2 --dns 10.20.38.51 --timelimit 10 --contexts 1 --apn internet --imsi 240011234567890 --msisdn 46702123456 --createif --defaultroute
Which outputs the following: Using DNS server: 10.20.38.51 (10.20.38.51) Local IP address is: 192.168.1.3 (192.168.1.3) Remote IP address is: 192.168.1.2 (192.168.1.2) IMSI is: 240011234567890 (0xf098765432110042) Using NSAPI: 0 Using GTP version: 1 Using APN: internet Using selection mode: 1 Using MSISDN: 46702123456
Initialising GTP library <000c> gtp.c:700 GTP: gtp_newgsn() started
After printing this line, sgsnemu stays very silent for 30-ish seconds, after which it prints (all in one go):
Setting up interface Done initialising GTP library
Sending off echo request Setting up PDP context #0 Waiting for response from ggsn........
Received echo response Received create PDP context response. IP address: 192.168.0.2 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 10.7.0.240 Dropping packet from invalid source address: 0.0.0.0 Dropping packet from invalid source address: 10.7.0.240 Disconnecting PDP context #0 Received delete PDP context response. Cause value: 128
Where 10.7.0.240 is the ip address of eth0
Once again, if you have any suggestions, I'm all ears! Thanks in advance!
/peter