8000 Fix downlink GTP packets not being forwarded when `ue_addr_ipv4` is set by louisroyer · Pull Request #138 · free5gc/gtp5g · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Fix downlink GTP packets not being forwarded when ue_addr_ipv4 is set #138

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 13, 2025

Conversation

louisroyer
Copy link
Contributor

According to TS 129.244 Table 7.5.2.2-2: PDI IE within PFCP Session Establishment Request:

UE IP address: If present, this IE shall identify the UE IP address
as the source or destination IP address to match for the incoming packet.

When gtp.role == GTP5G_ROLE_UPF, only the source address was checked. This resulted in dropping downlink GTP packets when UE IP address IE was set.

This bug makes freeGC's go-upf incompatible with some third party SMFs.

To reproduce the bug:

  1. setup a free5GC network with an UPF-I and an UPF-A.
  2. start pinging the Data Network from the UE
  3. use gtp5g-tunnel to edit the downlink pdr by adding the UE IP address on the downlink PDR.
  4. Without this PR, ICMP responses are no longer received from the UE because the UPF-i is dropping related GTP packets.

When merged, this will allow
https://github.com/free5gc/smf/blob/d049a7aa51db56cb2fad33713e422deac77ee2eb/internal/context/datapath.go#L636-L640 to be uncommented on free5GC's SMF. This also probably resolves the related FR5GC-1029 issue (but I don't have access to issue details, so I'm not sure).

louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Feb 4, 2025
louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Feb 4, 2025
louisroyer added a commit to nextmn/CP-Lite that referenced this pull request Feb 4, 2025
For free5GC's UPF's compatibility, apply free5gc/gtp5g#138
louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Feb 4, 2025
louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Feb 26, 2025
louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Mar 3, 2025
louisroyer added a commit to louisroyer/free5gc-smf that referenced this pull request Mar 4, 2025
According to TS 129.244 Table 7.5.2.2-2: PDI IE within PFCP Session Establishment Request:

> UE IP address: If present, this IE shall identify the UE IP address
> as the source **or destination IP address** to match for the incoming packet.

When `gtp.role == GTP5G_ROLE_UPF`, only the source address was checked.
This resulted in dropping downlink GTP packets when UE IP address IE was set.

This bug makes freeGC's go-upf incompatible with some third party SMFs.

To reproduce the bug:
1. setup a free5GC network with an UPF-I and an UPF-A.
2. start pinging the Data Network from the UE
3. use `gtp5g-tunnel` to edit the downlink pdr by adding the UE IP address on the downlink PDR.
4. Without this PR, ICMP responses are no longer received from the UE because the UPF-i is dropping related GTP packets.

When merged, this will allow
https://github.com/free5gc/smf/blob/d049a7aa51db56cb2fad33713e422deac77ee2eb/internal/context/datapath.go#L636-L640
to be uncommented on free5GC's SMF. This also probably resolves the related FR5GC-1029 issue (but I don't have access to issue details, so I'm not sure).
@tim-ywliu tim-ywliu merged commit 9a9896f into free5gc:master Mar 13, 2025
tim-ywliu pushed a commit to free5gc/smf that referenced this pull request Apr 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0