要让UE通过EPC连接到互联网,必须运行预配置的伪装(masquerading)脚本。这个脚本可以在srsRAN_4G的srsepc目录下找到。伪装脚本启用了IP转发,并设置了网络地址转换(NAT),以便在srsRAN 4G网络和外部网络之间传递流量。每次机器重启时都必须运行这个脚本,可以在网络运行之前或运行时执行。在运行这个脚本之前,UE将无法与互联网通信。
运行脚本之前,重要的是要确定用于将您的PC连接到互联网的接口。因为脚本需要将这个接口作为参数传递。这可以通过运行以下命令来完成:
```
ip route show
```
执行这个命令后,您将看到类似下面的输出:
```
default via 网关地址 dev 接口名称 proto static
```
在上述输出中,“接口名称”是您的PC连接到互联网所用的接口名称。例如,如果您看到`wlp2s0`,那么这就是您的无线接口名称。
找到接口名称后,您可以通过以下命令运行伪装脚本:
```
sudo srsepc_if_masq.sh 接口名称
```
将“接口名称”替换为您实际的接口名称。例如,如果您的接口名称是`wlp2s0`,那么命令将是:
```
sudo srsepc_if_masq.sh wlp2s0
```
成功执行后,您应该看到如下消息:
```
Masquerading Interface 接口名称
```
这表明伪装脚本已成功运行,UE现在应该能够通过EPC连接到互联网了。
UE现在已连接到网络,并且应该在每次开机时自动连接到这个网络。在您想要连接到网络之前,应该保持UE处于飞行模式。UE现在也应该能够像连接到商业4G网络一样访问互联网。
### 故障排除
#### 1. 网络查找和连接问题
如果手机在寻找网络或无法保持连接时遇到问题,可能是因为eNB信号的频率偏移和漂移,这可能是由于时钟不准确造成的。因此,我们始终建议为eNB使用外部10 MHz参考时钟或GPS驯服时钟。
#### 2. 互联网连接问题
一些用户即使在运行了伪装脚本后,也可能会遇到连接到互联网的问题。请确保已启用IP转发,并检查您的网络配置,因为这可能会阻止UE成功连接。
#### 3. 连接到网络的问题
用户可能还会遇到连接到网络的问题。首先检查配置文件和用户数据库文件中的所有信息是否正确。您可能还需要在eNB配置文件中调整增益参数——如果功率不够高(pmax阈值),UE将不会进行PRACH。
#### 4. USIM卡兼容性问题
请注意,某些USIM卡可能与“锁定”到特定网络运营商的UE不兼容。
### 总结
- 确保UE在正确的网络频段上操作,并且eNB的发射功率足够让UE检测到。
- 检查网络配置,特别是与IP转发和NAT相关的设置。
- 确保使用的USIM卡与您的网络兼容,并且UE没有被锁定到特定运营商。
- 使用精确的时钟源以避免信号漂移问题。
如果在尝试上述建议后仍然遇到问题,可能需要进一步检查硬件设置或联系技术支持。