Multiple DNS servers
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dear Friends /* warn lookupd of upcoming change */ notify_post("com.apple.system.dns.delay"); publish_dns_entry(kSCPropNetDNSServerAddresses, ...) that's basically the core of DNS changes. Thanks in advance. Platon Fomichev _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... Recently I've been working on porting of some VPN software to OS X, and although the process was smooth and I am fairly pleased with XCode, OS X, API ;) etc there is a pretty bad issue I don't know how to resolve. I can see this issue is in the pppd daemon as well so I'll use it as example because my work borrows a lot of hints from pppd tool. The issue is simple - let's say I have a pppd based VPN, I receive local/remote address and I can also receive DNS/WINS servers from remote host, if I ask for it. If I do so the following actions take place: and publish_dns_entry operates on SCDynamicStoreKeyCreateNetworkServiceEntity(0, kSCDynamicStoreDomainState, serviceidRef, kSCEntNetDNS); The result is as follows - remote DNS servers become main or primary ones, i.e. all DNS queries are routed through them. In my application this is not true, and I dare say this is also valid for many VPNs as well - I need to have remote DNS servers and current DNS servers simultaneously because VPNs is organized like additional network and not a default gateway for all traffic. So my question is - why does it happen that remote DNS servers completely eliminate current DNS server - is it by design? If yes - what should I do to override such design? I guess adding original DNS servers to the list will work.. Is it possible to fix this for PPPD daemon right from the box? This email sent to site_archiver@lists.apple.com
participants (1)
-
Platon Fomichev