Potential Issue with W5100 Support

Mike, please start new topic instead of renaming the topic. How would we keep track of issues otherwise? :slight_smile:

I investigated a little more and find out that my FEZ/W5100 combo did NOTsend a DNS request packet request at all.

Joe will have to answer this but just a quick note, you DNS IP may not be your router IP. The easiest way to find out is by connecting your PC using DHCP and then checking that the DNS is.

I did try with a public DNS server and get the same exception.

With the current implementation DNS requests are used to resolve a fully qualified name, example"www.tinylcr.com" only. It can not resolve an IP to an address.
This is the same case in the original NETMF socket feature (like on FEZ Cobra).

Instead,internally it checks the link and determent whether the string includes an IP address or an FQN.

Dns.GetHostEntry{β€œwww.tinyclr.com”); // should work fine. (Take a look at the function description in the documentation).
Dns.GetHostEntry{β€œ192.168.2.1”); //Should only return the IP address, no packets are sent over the network to get the FQN. If it is raising an exception then we have a bug and it will be easily fix in the next release. 8) but no FQ names are to be returned.
Why do you need to get the name in you application anyway? DNS is most commonly used to resolve a name to an IP address/

Using this line continues to give the same error. I have tried with other names like google.com


IPHostEntry hostEntry2 = Dns.GetHostEntry("www.tinyclr.com");

[quote]With the current implementation DNS requests are used to resolve a fully qualified name, example"www.tinylcr.com" only. It can not resolve an IP to an address.
This is the same case in the original NETMF socket feature (like on FEZ Cobra).[/quote]

I may not be understanding, but the Cobra will resolve addresses of the form β€œ192.168.1.200” in addition to β€œwww.tinyclr.com”.

If the current W5100 does not do numeric ip address resolution then I suggest it should for compatibility.

***** I just reread original post. I think Gus is saying that address of the form β€œ192.168.1.200” do not use a DNS server request to resolve them. The are handled within the Dns.GetHost() methods with IPAddress.Parse() type processing.

I think that the W5100 support should be as fully compliant with the full MR enet support as possible. This would allow users to easily migrate programs between FEZ platforms.

BTW: I Usually use Dns.GetHost() to resolve IP addresses when they are in string form. That way I don’t need to actually know the format of the address (Opaque).

Are you sure this raises the same exception? It is supposed to run with no issues. I will double check it on Monday. Maybe something was messed up before releasing the firmware.

IPHostEntry hostEntry2 = Dns.GetHostEntry("www.tinyclr.com");

It should be supported, but it will only resolve the IP address from string to IPHostEntry.

I agree. it must be a hardware error! ;D

I am pretty sure that both cases had an range error.

Ooops! It is as I expected. It is a stupid mistake in the code we published. Next release will have it all fixed.

Thank you Mike, with your help we can not get the next release fast enough for all.
I think you deserve some extra experience points.

The new release with the fixes is online.