首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用libgtpnl向GTP隧道插入GTP数据包

使用libgtpnl向GTP隧道插入GTP数据包
EN

Stack Overflow用户
提问于 2021-01-25 19:45:04
回答 1查看 303关注 0票数 1

我有一个问题,建立一个稳定的互联网连接(IuPS_PS)之间的MS和我们开发的网络核心系统使用我们的家庭nodeB (HNB)。

在我们的核心系统中,我们可以看到从MS发送到HNB和从HNB发送到核心系统的互联网数据包。我在HNB和core之间的界面上附上了wireshark日志的屏幕截图。

如图中所示,用户查询是server.hnb。源IP (MS )为10.250.0.114,目标IP为172.60.3.154 (核心IP)和8.8.8.8 (我们将其设置为在激活PDP上下文接受中的DNS地址)(激活PDP上下文接受是从核心发送到HNB和从HNB发送到MS的消息,其中包含DNS IP、比特率、.)等互联网参数。协议为 GTP -DNS,叠加层为DNS / UDP / IP /GTP/ UDP / IP。我在下面的图片中附加了层叠的图层:

目的地IP为172.60.3.154

目的地IP为8.8.8.8

另外,我们知道要处理GTP数据包,需要一个GTP隧道来侦听UDP端口2152。为此,我们使用libgtpnl (osmocome )并建立一个GTP隧道,首先,我们必须使用libgtpnl的以下命令创建一个GTP接口:

代码语言:javascript
复制
gtp-link add gtp1 --sgsn

其中gtp1是接口名。执行上述命令后,我们使用netstat显示网络连接,结果如下:

一切都没问题。最后,我们使用以下libgtpnl命令添加GTP隧道:

代码语言:javascript
复制
gtp-tunnel add gtp1 v1 100 1 10.250.0.114 172.60.3.154

在v1是GTP版本的情况下,100是RAB-分配请求 (GTP隧道配置从核心发送到HNB)中的gTP-TEI字段,1是从RAB-赋值响应 (GTP隧道配置从HNB发送到核)获得的类似字段。另外,10.250.0.114是MS IP,172.60.3.154是核心IP。

在从MS接收到核心的一些数据包并使用netstat后,我们看到Recv-Q ( UDP端口2152中准备读取的字节)会增加到大于0的值,但是添加的GTP隧道不会读取GTP数据包,我们已经添加的gtp1接口在wireshark中是空的。GTP数据包没有插入到我的GTP隧道(gtp1)中有什么问题?

EN

回答 1

Stack Overflow用户

发布于 2021-12-06 07:23:54

您希望处理GTP-U数据包,因此您的测试机器是GGSN而不是SGSN,因此您的git-link命令不正确,必须删除参数“-sgsn”。

libgtpnl在SGSN和GGSN上的命令类似如下:

SGSN:

代码语言:javascript
复制
gtp-link add gtp1 --sgsn
gtp-tunnel add gtp1 v1 100 200 1.1.1.1 2.2.2.10

GGSN:

代码语言:javascript
复制
gtp-link add gtp1
gtp-tunnel add gtp1 v1 200 100 1.1.1.1 2.2.2.2

2.2.2.2是SGSN节点的IP地址

2.2.2.10是GGSN节点的IP地址

1.1.1.1是用户/终端的IP地址

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65891410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档