The below solution might work for you.
Some background on the issue:
I have seen one such similar issue earlier as well due to the range extender stripping off UDP checksum and causing packet drop by FreeRTOS+TCP device.
You said that “the FreeRTOS device is not able to obtain an IP Address”. Yes, that sounds about right. The TCP device uses DHCP to try and obtain an IP address from the DHCP server. DHCP runs on top of UDP layer. If the range extender is stripping the UDP checksum (and replacing the checksum with 0), then the response from the DHCP server will be dropped by the FreeRTOS+TCP device.
Due to security concerns, a macro was introduced
ipconfigUDP_PASS_ZERO_CHECKSUM_PACKETS which allows the user to choose whether to accept UDP packets with 0 checksum or to drop them. The configuration defaults to 0 - meaning drop packets.
You can add this line to the local copy of FreeRTOSIPConfig.h file:
#define ipconfigUDP_PASS_ZERO_CHECKSUM_PACKETS 1 to fix this issue.
Let me know if this works for you!
If not, we can dive deep into the issue and try to find a resolution. In this case, please provide answers to the questions that Richard has posted above. I’ll ask you a few more questions too