Skip to content
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

IMS registration and network deploy #303

Open
helloTkk opened this issue Apr 4, 2024 · 5 comments
Open

IMS registration and network deploy #303

helloTkk opened this issue Apr 4, 2024 · 5 comments

Comments

@helloTkk
Copy link

helloTkk commented Apr 4, 2024

Hi @herlesupreeth , thanks for making this docker and tutorial for programming the SIM card!

I'm trying to make a VoLTE call with the dockerized setting, but I'm facing some troubles now.

Below is my Environment:
OS: Ubuntu 20.04
Device: USRP B210
eNodeB: srslte in docker
SIM: SysmoISIM-SJA2 (programmed successfully by following the nice CoIMS tutorial)
UE: Google Pixel 6 (Android 13)

I used the following command to start the open5gs and enodeB, they are on the same machine.
Terminal 1: docker compose -f 4g-volte-deploy.yaml up
Terminal 2: docker compose -f srsenb.yaml up -d && docker container attach srsenb

The UE was attached successfully (attach complete) but IMS was not registered. Also, I found UE doesn't have the internet access.

I have attached PCAP here, also all the configurations I used and UE screenshots, .env ,etc..
PCAP_and_configs.zip

Note: To make the pcap file more clear, you may use the filter:
s1ap || gtpv2 || pfcp || diameter || diameter.3gpp || sip || dns

Could you please provide some help here? Thanks!

@herlesupreeth
Copy link
Owner

Thanks for the detailed logs and pcap.

image

I see that phone has attempted to connect to IMS APN and is successful in doing so. But, it didnt send SIP REGISTER towards IMS. You could try/check the following on the phone

  1. Restart the phone and see whether it issues SIP REGISTER or not ( ti can happen that phone gives up on sending SIP REGISTER after repeatedly failing to attach to IMS)
  2. Check whether VoLTE is enabled in the phone settings under mobile network menu

Also, I found UE doesn't have the internet access.

Thats the default behavior of the phone when it fails to register with IMS

@helloTkk
Copy link
Author

Hi @herlesupreeth ,

I further tried several more UEs (with the same SIM Card) listed below:
iphone 13 (ios 17.4.1)
XiaoMi Mix 2 (Android 11), it should have the same baseband chipset as the Oneplus phone you are using.

Both of the phones are attached successfully, but no SIP register was sent when I used dockerized open5gs and dockerized srslte. However, I also tried them with Amarisoft setup, and both of them sent SIP Register after attaching. So, I think the SIM card I programmed is correct, and the problem comes from my dockerized VoLTE setup deployment.

I have the following questions:

  1. I'm running dockerized open5gs and dockerized srslte on the same machine, in the .env file, I set the DOCKER_HOST_IP=104.39.168.68, which is ip address of my wifi adapter (see my config in ifconfig_terminal.txt attached before), is it a correct setting? I also didn't change the UE_IPV4_INTERNET and UE_IPV4_IMS in .env.
  2. I started dockerizing srslte using the command docker compose -f srsenb.yaml up -d && docker container attach srsenb directly. Is there anything I need to change in the config file to support VoLTE?
  3. I noticed some ICMP packets in the pcap file (docker_open5gs_enb_iphone.pcapng). Based on the .env, 172.22.0.22 is the IP of dockerized enodeB, but it shows the destination unreachable. Is there anything wrong with my configuration file?

New pcaps are attached and my configuration files are attached before. Thanks for your time and assistance!

PCAPS2.zip

@herlesupreeth
Copy link
Owner

I'm running dockerized open5gs and dockerized srslte on the same machine, in the .env file, I set the DOCKER_HOST_IP=104.39.168.68, which is ip address of my wifi adapter (see my config in ifconfig_terminal.txt attached before), is it a correct setting? I also didn't change the UE_IPV4_INTERNET and UE_IPV4_IMS in .env.

This shouldnt matter if all are running in the same machine

I started dockerizing srslte using the command docker compose -f srsenb.yaml up -d && docker container attach srsenb directly. Is there anything I need to change in the config file to support VoLTE?

Nope

image

I see iPhone attempting to initiate a SIP REGISTER by first sending TCP SYN to port 5060 but strangely its been replied with ICMP unreachable.

Can you execute the following on the host machine and then give it a try once more please?

sudo ufw disable

if the above method also doesnt work then I would check whether P-CSCF is properly up and running when deployed.

@helloTkk
Copy link
Author

I'm running dockerized open5gs and dockerized srslte on the same machine, in the .env file, I set the DOCKER_HOST_IP=104.39.168.68, which is ip address of my wifi adapter (see my config in ifconfig_terminal.txt attached before), is it a correct setting? I also didn't change the UE_IPV4_INTERNET and UE_IPV4_IMS in .env.

This shouldnt matter if all are running in the same machine

I started dockerizing srslte using the command docker compose -f srsenb.yaml up -d && docker container attach srsenb directly. Is there anything I need to change in the config file to support VoLTE?

Nope

image

I see iPhone attempting to initiate a SIP REGISTER by first sending TCP SYN to port 5060 but strangely its been replied with ICMP unreachable.

Can you execute the following on the host machine and then give it a try once more please?

sudo ufw disable

if the above method also doesnt work then I would check whether P-CSCF is properly up and running when deployed.

Hi @herlesupreeth, thanks for your assistance!

I executed sudo ufw disable and used another command, sudo ufw status, to check the firewall status; I got "Status: inactive."

Then I tried with iPhone 13 again, pcap is attached, and I saw the problem you mentioned is still there. I also attached my terminal logs, I also saw some errors in the terminal logs.

Btw, I also tried to ping 172.22.0.21 from my host machine, and it looks okay.

Thanks again for your help!
PCAP3.zip

@herlesupreeth
Copy link
Owner

Its still the same. I would suggest to reboot the machine. Then execute sudo ufw disable. Then, bring up all services and attempt an IMS registration

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

No branches or pull requests

2 participants