BC66, The support for CLAT and 464XLAT

Hello,
We would like to know if BC66 module supports CLAT function, from what I understand. CLAT function is used for translating IPv4 addresses to IPv6 in the UE itself.

I could not find the corresponding documentation in any of the manuals and guides, would request the support to shed some light on this. If it supports CLAT function or not, and where can we get any relevant information.

The module itself supports IPv4v6

Does this mean that, in ‘IPV6 only’, I can be able to send push data to a IPv4 address?

Only IPV6 cannot be used to convert IPV4

Only IPV6 cannot be used to convert IPV4
Does this mean in IPv6 only mode, we can’t even ping IPv4 address?

I would request if you can may be ask internal developer team, if they support CLAT function for BC66 or even for BG96.

We have already tested BG96 with IPv6 mode only and were able to push data through MQTT over IPv4 host address successfully (surely using NAT64 DNS on the network side), which surely suggests that BG96 supports CLAT, yet we couldn’t find any documentation to confirm.

Now we would like to try the same above with BC66 module, and again we could not find any supporting documentation.

Well, the module does not support the function of IP routing address translation. My preliminary analysis shows that you can use ipv6 only to access the ipv4 server, probably because of the role of the router in the network node

Hello Herbert,

We don’t mean any IP routing address translation when we mean CLAT (Customer side Translator). As per your preliminary analysis, IPv6 only mode can access IPv4 address, which mostly leans to suggest that CLAT function is supported, which is happening partly on UE and partly due to network (NAT64). We are asking just for confirmation if this is being supported may be in either TCP/IP stack or in Release 14 3GPP standards.

After digging in a little, as per the RFC guidelines (RFC6877). If this helps

We want a confirmation from the Manufacturer (Quectel) on this. I am also adding the definition of CLAT as per this link.



Would request if you can guide to the right person who can help us on this feature.

Hello @sambhavjain12,

I was going through your thread and it appears that you were successfully able to connect an IPv6-only client to an IPv4-only network(Your mqtt broker server I believe) on a BG96.

I am currently stuck in a similar situation. I am using Quectel EC200U-CN module to try to connect to my MQTT server(having a public IPv4 address), on a JIO network, but with no luck yet.

Since, I am not getting an Ipv4 IP address with my JIO sim, I am unable to do so.

at+cops?
+COPS: 0,0,"RJIO",7
OK

at+qicsgp=1,3,"jionet"
OK

at+qiact=1
OK

at+qiact?
+QIACT: 1,1,3,"0.0.0.0","2409:40D4:xxxx:xxx:8000::"
OK

Like you said, I have tried using Google’s public DNS64 server to use a NAT64 gateway to achieve this ( Explained here ), but was unsuccessful even after that.

at+qidnscfg=1,"2001:4860:4860::6464","2001:4860:4860::64"

OK

Can you please tell me how you used the NAT64 to achieve your connection?

Thanks and regards

Can you just use your generated IPv6 server address instead of its real IPv4 address or name?
Note that 464XLAT comes into play when you need to reach “literal IPv4” address, e.g. when DNS is not involved.
If you have IPv4 only address available in DNS (“A” record) for your server, then you may need DNS64.

For a single host I would try using its address without DNS, as I mentioned at the beginning.
Your provider may have their own DNS64 server(s), so Google is not necessarily needed.

Thanks for your response,

Yes, my server explicitly has an IPv4-only network available. Moreover, I have other IPv4 clients/devices connected to this server currently, so basically I cannot restart or reconfigure its network settings as of now.

what I am free to do is use any of such address management / translation methods like 464XLAT as you said, on this device (EC200U with a JIO-India IPv6-only network) if it supports CLAT.
But I do not know the right AT commands to configure it.

Can you help me with that?
Or maybe I am getting it all wrong?

I proposed to configure the DNS64 generated IPv6 address on a single client, nothing else.
You should have something like 64:ff9b::xxxx:xxxx where xxxx.xxxx is encoded representation of your server IPv4 address.
If your server has a DNS A record, then DNS64 server will respond with the required IPv6 address for your server. If you have no DNS record, you can encode the address here, but strip ffff.