0
点赞
收藏
分享

微信扫一扫

5G网络终端是如何得到IP地址的

5G网络中最基本的功能就是手机上网业务,为了实现手机上网,手机必须有一个IP地址,那么5G网络是如何给手机分配IP地址的呢?

5G网络终端是如何得到IP地址的 _5g

一般来说,有下面4种方式:

1、在5G核心网中配置IP地址池,手机通过信令与核心网交互得到一个动态的IP地址,这个IP地址在手机不需要的时候,可以释放,这样,网络侧可以分配给其他手机继续使用。

2、通过DHCP方式来实现,就是手机与部署在网络中的DHCP服务器交互,得到一个IP地址,每次交互得到的IP地址是不同的。

3、通过外部的RADIUS 服务器得到地址,就是5G核心网与RADIUS服务器交互,得到IP地址后,再通过信令通知到手机。RADIUS可以分配动态地址或者静态地址。

4、通过UDM签约方式来实现,这个时候,就是采用静态地址方式,就是给某个手机分配固定的IP地址,用于特殊目的才会使用静态地址。

在实际部署中,方式一是最常用的,也是最简单的。

5G网络终端是如何得到IP地址的 _5g_02

如果某个终端必须采用静态地址,则可以采用方式3与方式4。这种情况下,终端用户与IP地址是绑定的。

方式1与方式2都是分配动态地址,就是IP地址与终端用户不是绑定的。

​​IP数据云 - 免费IP地址查询​​

IP数据云利用大数据挖掘和网络空间地图测绘技术与人工智能(AI)算法相结合,利用动态密度聚类算法和基于多层神经网络的IP地址定位算法,完成IP地址地理位置定位。

5G网络终端是如何得到IP地址的 _ide_03

检测5G网络的具体实现:使用TelephonyManager的监听方法

private fun getNetworkType(){
val tManager = getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager

tManager.listen(object : PhoneStateListener() {
@RequiresApi(Build.VERSION_CODES.R)

override fun onDisplayInfoChanged(telephonyDisplayInfo: TelephonyDisplayInfo) {
if (ActivityCompat.checkSelfPermission(this@Android11Test2Activity, android.Manifest.permission.READ_PHONE_STATE) != android.content.pm.PackageManager.PERMISSION_GRANTED) {
return

}

super.onDisplayInfoChanged(telephonyDisplayInfo)

when(telephonyDisplayInfo.networkType) {
TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_LTE_ADVANCED_PRO -> showToast("高级专业版 LTE (5Ge)")

TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NR_NSA -> showToast("NR (5G) - 5G Sub-6 网络")

TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NR_NSA_MMWAVE -> showToast("5G+/5G UW - 5G mmWave 网络")

else -> showToast("other")

}

}

}, PhoneStateListener.LISTEN_DISPLAY_INFO_CHANGED)

}

举报

相关推荐

0 条评论