EG800Q DNS lookup

Hi,

I’m working with an EG800Q, and trying to perform pings to google.com from an NXP iMX.RT1040 using PPPoS. I’ve got versions working, one using FreeRTOS+LwIP and one using ThreadX. However, it seems that mapping the hostname to its IPv4 only works when using one of the two DNS servers the modem lists when running AT+CGCONTRDP:

+CGCONTRDP: 1,5,"<APN>","<IPv4>","<IPv4>","<DNS 1>","<DNS 2>"

OK

Through the different SW APIs I’ve tried instructing the TCP/IP stack to use Google’s DNS server (8.8.8.8), but that doesn’t work, and I’m a bit confused as to why. Is there some configuration option that needs to be set to allow this, or does it just mean that 8.8.8.8 isn’t reachable by the modem? I’m however able to ping 8.8.8.8 directly, so it does seem that its reachable by the modem. Could that DNS server have some additional requirements that the setup doesn’t fulfill? Does the DNS server used need to be set up in the modem?

Thanks,
Daniel

pls run

AT+CEREG?
AT+QENG=“SERVINGCELL”
AT+CGPADDR
AT+QIACT?

Here’s the output:

AT+CEREG?
AT+CEREG?
+CEREG: 0,5
OK

# Note 'servingcell' is in lower case
AT+QENG="servingcell"
+QENG: "servingcell","NOCONN","LTE","FDD",242,02,1E9A31F,70,1650,3,5,5,9CF,-104,-14,-70,-3,25
OK

AT+CGPADDR
AT+CGPADDR
+CGPADDR: 1,"<IPv4>"
OK

AT+QIACT?
AT+QIACT?
OK

I also tried changing the DNS server the modem is configured with, but that doesn’t work:

AT+QIDNSCFG=1,"8.8.8.8","8.8.4.4"
AT+QIDNSCFG=1,"8.8.8.8","8.8.4.4"
ERROR

That seems strange, as the command is listed as supported, and running AT+QIDNSCFG=? works.

Edit: using 8.8.8.8 now suddenly seems to work consistently. I’m in direct contact with someone from Quectel, so will update here if I figure out what caused the issue yesterday.

you run

AT+QPING=1,“8.8.8.8”

Yes, I’ve ran both using the AT command directly, but I’m also able to ping 8.8.8.8 over PPP, so it’s definitely reachable.

I think there may be uncertainty about the server you connect to. Can you provide the AT flow of the device connecting to the server?

I’ve tried a few public DNS servers (8.8.8.8, 1.1.1.1, and also from a local ISP), and none of them work consistently. A colleague set up a “fake” DNS server that replied with a hard coded DNS reply, and that worked.

Here’s the list of AT commands:

ATI
AT+CEREG?
AT+CGACT=1
AT+CGDCONT=1,"IP","<APN>"
AT+CGCONTRDP
ATD*99***1#

Then, the TCP/IP stack on the main MCU starts communicating using PPP.