upg-vpp: UE can't ping anything and crashes VPP
Hi,
I am currently trying to use your UPG plugin in a LTE architecture with erGW. The UE is connecting to the network and an IP address is attributed to it but it can’t reach anything nor be reached by any interface. Moreover, VPP crashes whenever I try to ping the SGi interface of VPP (10.0.0.2 on the diagram below).
My network configuration is the following

VPP and erGW are placed in a Ubuntu 20.04 docker container on a computer. The MME and HSS are both from the Open5GS project and are hosted on the same computer. I use srsLTE for the eNodeB.
I can see from the command sh upf session that my UE is recognised by VPP as the IP address appears there.
CP F-SEID: 0xffde7210bfdc4048 (18437299340765315144) @ 192.168.1.2
UP F-SEID: 0xffde7210bfdc4048 (18437299340765315144) @ 192.168.1.1
PFCP Association: 0
PDR: 1 @ 0x7fd9f4ef3740
Precedence: 100
PDI:
Fields: 00000001
Source Interface: CP-function
Network Instance: cp
Local F-TEID: 2271652686 (0x8766ab4e)
IPv4: 192.168.1.1
Outer Header Removal: GTP-U/UDP/IPv4
FAR Id: 1
URR Ids: [] @ 0x0
QER Ids: [] @ 0x0
FAR: 1
Apply Action: 00000002 == [FORWARD]
Forward:
Network Instance: epc
Destination Interface: 0
CP F-SEID: 0xffde7210c5b30007 (18437299340863275015) @ 192.168.1.2
UP F-SEID: 0xffde7210c5b30007 (18437299340863275015) @ 192.168.1.1
PFCP Association: 0
UP Inactivity Timer: 28800 secs, inactive 8.6304 secs (0x00000c05)
PDR: 1 @ 0x7fd9f49a1700
Precedence: 100
PDI:
Fields: 0000000d
Source Interface: Access
Network Instance: epc
Local F-TEID: 3559416503 (0xd42862b7)
IPv4: 172.20.17.2
UE IP address (source):
IPv4 address: 10.180.0.136
SDF Filter [1]:
permit out ip from any to assigned
Outer Header Removal: GTP-U/UDP/IPv4
FAR Id: 1
URR Ids: [1] @ 0x7fd9f4ef6960
QER Ids: [] @ 0x0
PDR: 2 @ 0x7fd9f49a1780
Precedence: 100
PDI:
Fields: 0000000c
Source Interface: SGi-LAN
Network Instance: sgi
UE IP address (destination):
IPv4 address: 10.180.0.136
SDF Filter [1]:
permit out ip from any to assigned
Outer Header Removal: no
FAR Id: 2
URR Ids: [1] @ 0x7fd9f4ef6a00
QER Ids: [] @ 0x0
FAR: 1
Apply Action: 00000002 == [FORWARD]
Forward:
Network Instance: sgi
Destination Interface: 2
FAR: 2
Apply Action: 00000002 == [FORWARD]
Forward:
Network Instance: epc
Destination Interface: 0
Outer Header Creation: [GTP-U/UDP/IPv4],TEID:00000001,IP:172.20.17.1
URR: 1
Measurement Method: 0003 == [TIME,VOLUME]
Reporting Triggers: 0000 == []
Status: 0 == []
Start Time: 2021/03/03 16:43:21:707
vTime of First Usage: 0.0000
vTime of Last Usage: 0.0000
Volume
Up: Measured: 0, Theshold: 0, Pkts: 0
Consumed: 0, Quota: 0
Down: Measured: 0, Theshold: 0, Pkts: 0
Consumed: 0, Quota: 0
Total: Measured: 0, Theshold: 0, Pkts: 0
Consumed: 0, Quota: 0
Time
Quota: 0 secs @ 2021/03/03 16:43:30:326, in -16147862 secs, handle 0xffffffff
Threshold: 0 secs @ 2021/03/03 16:43:30:326, in -16147862 secs, handle 0xffffffff
Here is my startup.conf
unix {
nodaemon
log /tmp/vpp.log
full-coredump
gid vpp
interactive
cli-listen localhost:5002
exec init.conf
}
api-trace {
on
}
api-segment {
gid vpp
}
plugins {
path /usr/src/upg-vpp/vpp/build-root/install-vpp_debug-native/vpp/lib/vpp_plugins/
plugin dpdk_plugin.so { disable }
plugin gtpu_plugin.so { disable }
plugin upf_plugin.so { enable }
}
And my init.conf
ip table add 1
ip table add 2
ip6 table add 1
ip6 table add 2
create host-interface name grx
set interface mac address host-grx 02:42:ac:14:11:02
set interface mtu 1500 host-grx
set interface ip table host-grx 1
set interface ip address host-grx 172.20.17.2/24
set interface state host-grx up
create host-interface name sgi
set interface mac address host-sgi 02:42:0a:00:00:02
set interface mtu 1500 host-sgi
set interface ip table host-sgi 2
set interface ip address host-sgi 10.0.0.2/24
set interface state host-sgi up
create tap host-ip4-addr 192.168.1.2/24
set int ip address tap0 192.168.1.1/24
set int state tap0 up
ip route add 0.0.0.0/0 table 2 via 10.0.0.1 host-sgi
upf pfcp endpoint ip 192.168.1.1 vrf 0
upf nwi name cp vrf 0
upf nwi name epc vrf 1
upf nwi name sgi vrf 2
upf gtpu endpoint ip 192.168.1.1 nwi cp teid 0x80000000/2
upf gtpu endpoint ip 172.20.17.2 nwi epc teid 0x80000000/2
Thank you in advance
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 18 (8 by maintainers)
That was the problem. I can now reach 8.8.8.8 from the UE.
Thank you very much for your time.
I started off with this walkthrough but the configurations are outdated.
For the erGW configuration, you can refer to this issue which provides a suitable
ergw-c-node.configfile.For the UPG-VPP part, you need to run this to install VPP with this plugin:
The
startup.confandinit.confI use are the one from here. Also, you don’t need to run thesudo ip addr add 192.168.1.2/24 dev vpptapfrom the walkthrough.