EG25 in SixFab LTE HAT - Problem with SSH connection to RaspPi

Hi all, I have checked the forum already extensively for similar posts, and while there are a few similar, they are not exact in nature. So I seek advice as I have tried all in my means so far.

I am trying to get a SSH (and other services) connection working through a SixFab LTE HAT holding a Quectel EG-25 card on a RaspberryPi 4B unit.

So far on the Pi, normal internet http/s connection is working well with the SIM installed, setup via nmcli commands and connected via USB (not just GPIO pins).

The problem is when trying to reach the Pi via SSH, I tried changing the port to another port other than default 22, in case ISP blocked it, nothing positive.

I have now tried to setup the SixFab on windows with the QNavigator to see if I can get a SSH connection going here for testing, PPP connection is established, but Windows does not see the device as an adaptor (Quectel ECM Adapter still shows not initiated remark). I installed the driver for it posted in another post by a moderator here, and still it shows non initiated. This is secondary to the SSH objective.

How can I get the SSH connection working on the Pi, as I would like to be able to SSH in to the Pi from the WAN.

If anyone has any input, thank you in advance.

No way. Unrelated to Quectel, Pi, SixFab, etc.
Your Pi is behind two NATs - on the modem (because of ECM) and on the ISP side.

Thanks for the quick response.

Ok, I see, the SixFab board acts more like a holder/interface for the Quectel EC25 to my understanding, so could you provide some guidance as to how to create the port forwarding in the EC25?

If you change from ECM to MBIM or QMI, this will not be necessary.
But first you need to get a public IP on your “air” interface.

Ok, you refer to a Public IP, as in a static IP basically? I dont think this is an option on the table at the moment, or at least the was no provision to go down that route.

Is that absolutely essential for this to work? I have a dynamic dns (duckdns service) so I get a fixed host name to mitigate the effects of having a dynamic ip.

Public means public or globally routable type of address, the assignment method - static or dynamic - does not matter. Using DDNS with private address is pointless.

Ok, copy. This would be the IP provided to the Quectel LTE modem by the data carrier then. This is what is updated to the DDNS host name.

Ive checked that its the same IP that any generic “whats my ip” service provides.

Where do I go from here to provide the SSH transparency through the EG25? How can one open up the port, NATS? Similar to what one does on a router to achieve the same goal.

Forgive my ignorance, Im not a networking engineer, just a humble electronics engineer trying to implement this SSH concept to monitor a Pi over SSH (and a few other services eventually).

You need to check IP address on your modem with a standard command AT+CGPADDR

Hi Jfrog, hope your 2025 started well.

Thanks again for the response. Regarding the AT command, ok, this is showing me what I know already from the generic “whats my ip address” services, correct?

But how do I perform the next step of opening the ports? This is where it goes over my head.

Please show AT+CGPADDR output, hide or mask the last digits only.