My project requires submitting of data to a webserver, for which I need to obtain the webserver's IP address. The industry standard solution would obviously be to use the configured DNS servers obtained from DHCP. Regrettably this seems impossible with the S6B's current firmware....
1. The AT command interface does not support a method for getting the configured DNS servers. It would be nice if it did
, but it doesn't...
2. Any attempt to send a DHCPInform request manually (in order to get the DNS adresses) results in the DHCP response getting silently swallowed by the S6B before it reaches the serial port.
Additionally it seems that DHCP responses that I "fake" (with a source port other than 67) and send via UDP to destination port 68 on the XBee do
arrive successfully on the serial port. So this would appear to be a limitation of the current S6B firmware, and not
a bug in my implementation.
Steps to reproduce missing DHCPInform responses:
1. The S6B has received a valid IP address via DHCP
2. Turn of DHCP (MA1) .
3. Configure serial service port to receive DHCP responses on DHCP client port 68 (C068).
4. Broadcast DHCPInform packet to destination port 67 from source port 68 using UDP via API frame type 0x20.
5. Transmission status frame type 0x89 with status=0x00 (success) is
received via the serial port.
serial data is received for the received DHCPInform response, despite both request and response being visible via a network protocol analyser.
Is anyone able to offer a workaround that does not involve hard coding IP addresses of one form or another (i.e. either the address webserver or the DNS server to use)?
Unfortunately in its current implementation it seems the S6B just isn't able to meet my needs for this project and I will have to look elsewhere...
Suggestions for Digi for a future firmware (any one of which would resolve my current issue):
a. An explicit DNS enquiry API would be really useful
b. Provide AT commands to get the DHCP configured DNS servers without having to manually perform a DHCPInform to ask for them, and/or...
c. At the very least do not
silently sink DHCP responses when the S6B DHCP client is configured OFF (MA1).