我有一个问题,建立一个稳定的互联网连接(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接口:
gtp-link add gtp1 --sgsn其中gtp1是接口名。执行上述命令后,我们使用netstat显示网络连接,结果如下:

一切都没问题。最后,我们使用以下libgtpnl命令添加GTP隧道:
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)中有什么问题?
发布于 2021-12-06 07:23:54
您希望处理GTP-U数据包,因此您的测试机器是GGSN而不是SGSN,因此您的git-link命令不正确,必须删除参数“-sgsn”。
libgtpnl在SGSN和GGSN上的命令类似如下:
SGSN:
gtp-link add gtp1 --sgsn
gtp-tunnel add gtp1 v1 100 200 1.1.1.1 2.2.2.10GGSN:
gtp-link add gtp1
gtp-tunnel add gtp1 v1 200 100 1.1.1.1 2.2.2.22.2.2.2是SGSN节点的IP地址
2.2.2.10是GGSN节点的IP地址
1.1.1.1是用户/终端的IP地址
https://stackoverflow.com/questions/65891410
复制相似问题