I've discovered something very specific relative to this topic but don't know how to permanently resolve it.
I routinely connect to a specific public wifi that assigns IP addresses of 192.168.X.YYY. If the X is a 1, then I have no problems accessing the internet. If it is a 2 then I can connect to the wifi but cannot access the internet. I resolve the problem by renewing the lease until I finally get an address where the X=1.
This affects both of our iPads AND both of our iPhone 4S phones.
I doubt that I can convince anyone to change the settings on the router or upgrade the router so is there another solution?
With the advent of iOS 6 Apple requires the new IP 6 internet addressing to be enabled, not necessarily on the local network, but it must be for the internet side of the router. This has been standard in routers for a few years now, but older routers (or improperly set up ones) may need updating.
What you are seeing IP address wise suggests there are actually two networks (probably connected) with the same name. Each is serving out IP addresses, and which you get is purely a function of which router gets you first. That, or the administrator has two DHCP servers running. Either is a problem, the second worse than the first.
Anyway, the X=2 network is probably not setup to pass the IP6 address protocol, or some other routing issue.
There is nothing you can really do about it, other than what you are doing. Setting up a Static IP on a DHCP network can cause more problems that it solves if not done on both the router and device, and that would be the only way to force the X=1 IP address.
It won't hurt to mention your problem to whoever is in charge of the network. They must have some interest in keeping things working for all their users, and there are a lot of iOS users. All they can do is say no. As long you are not antagonistic about it you have nothing to lose.