Thanks for this discussion Bob. Based on this discussion, I have implemented a DNS client at the application and tested it out too. It works well.
On 2/4/10, Bob Kerns <[email protected]> wrote: > Ah, this provides a lot more context -- but not all of it! > > Normally, this sort of thing is handled through DHCP or similar. I > don't know if you have access to the server providing the information > -- are you the carrier? > > To change the DNS resolution policies in any way, will require root > access, and have global impact. Do you own these devices? Or are you > developing an app for public consumption? > > The one (nearly) sure-fire way to do this, is to query the DNS server > yourself, in the application. The "(nearly)" is because firewalls can > intervene. > > I would urge you to avoid any sort of temporary change to the global > DNS resolution. It's one thing if you have control over the device and > pre-configure it for the users. But temporary changes to DNS > configuration has a way of going bad when events happen in other than > the expected order. And if you get two applications trying to impose > THEIR will on an entire platform, it's a formula for chaos. > > I don't know how DNS resolution is configured on Android, but this may > be useful: > > # getprop | grep dns > [net.change]: [net.dnschange] > [net.dnschange]: [878] > [dhcp.eth0.dns1]: [] > [dhcp.eth0.dns2]: [] > [dhcp.eth0.dns3]: [] > [dhcp.eth0.dns4]: [] > [net.dns1]: [10.177.0.34] > [net.rmnet0.dns1]: [10.177.0.34] > [net.rmnet0.dns2]: [10.165.17.242] > [net.dns1.161]: [10.177.0.34] > [net.dns2.161]: [10.165.17.242] > [net.dns2]: [10.165.17.242] > [net.dns1.79]: [10.177.0.34] > [net.dns2.79]: [10.165.17.242] > [net.dns1.31939]: [] > [net.dns2.31939]: [] > # > > If you're connected via wifi, the "dhcp.eth0.dns*" entries are filled > in instead; the above is with Wifi disabled. > > Still -- and I don't know the 3GPP protocols here, but if they're not > deviating too much from how things were designed, any old DNS server > should be able to supply you with the information. The DNS server you > contact will, based on the domain requested, contact the appropriate > DNS server and obtain the information, cache it, and relay it to the > requester. > > Perhaps this is not suitable for this for some reason, but if so, > realize the reason it's hard is because "3GPP is doing it wrong" -- > that is, using tools in ways they weren't intended. Maybe it's all > worthwhile; I don't know, I'm just trying to give you helpful context > and info, not technical judgments. > > Fun historical fact: In 39 days (March 15), it will be the 25th > anniversary of the very first DNS registration, Symbolics.com. (The > domain name was recently purchased). I worked at Symbolics from > 1981-1987, so it's an occasion I remember well. > > On Feb 3, 11:07 pm, Android Development <[email protected]> wrote: >> Bob, making a DNS query by the application is a standardized procedure of >> 3GPP (3rd generation partnership project). All Mobile devices need to >> query >> a DNS server installed in the VoIP network to find the address of the >> server >> which will process their requests. This DNS server is under the control of >> the VoIP service provider and provides the IP address of the VoIP server. >> >> Devices are pre-configured with the domain name of their home network ( >> atlanta.com for example). They need to find the IP address of the server >> on >> that domain by firing a DNS query. The DNS server's IP address is also >> a configurable parameter in all soft clients. >> >> My question was regarding this use case. >> >> This procedure is standardized as the DNS/DHCP procedure of discovering >> the >> outbound proxy server by the mobile client. >> >> With this background, if I need to query a DNS server installed on a given >> IP address on the network, is it technically feasible ? Or will the >> operating system automatically resolve the next hop based on the >> resolv.conf >> file (if it is configured there) if i try and send a request to >> atlanta.com? >> >> >> >> On Wed, Feb 3, 2010 at 10:55 PM, Bob Kerns <[email protected]> wrote: >> > I didn't mean that to be harsh, BTW. Knowing that an approach is out >> > in left field, and why, is useful information. Some of the most useful >> > information you can get, as a beginner, since it narrows the focus of >> > what you have to learn, a lot! >> >> > On Feb 3, 9:21 am, Bob Kerns <[email protected]> wrote: >> > > Then you are doing something VERY strange. >> >> > -- >> > You received this message because you are subscribed to the Google >> > Groups "Android Developers" group. >> > To post to this group, send email to [email protected] >> > To unsubscribe from this group, send email to >> > [email protected]<android-developers%2Bunsubs >> > [email protected]> >> > For more options, visit this group at >> >http://groups.google.com/group/android-developers?hl=en > > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

