diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index 335d3fef11..2f6bbeccba 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -1785,13 +1785,18 @@ public class ConnectivityService extends IConnectivityManager.Stub { if (p == null) return; Collection dnses = p.getDnses(); try { - mNetd.setDnsServersForInterface(Integer.toString(netType), + mNetd.setDnsServersForInterface(p.getInterfaceName(), NetworkUtils.makeStrings(dnses)); } catch (Exception e) { Slog.e(TAG, "exception setting dns servers: " + e); } boolean changed = false; if (mNetConfigs[netType].isDefault()) { + try { + mNetd.setDefaultInterfaceForDns(p.getInterfaceName()); + } catch (Exception e) { + Slog.e(TAG, "exception setting default dns interface: " + e); + } int j = 1; if (dnses.size() == 0 && mDefaultDns != null) { String dnsString = mDefaultDns.getHostAddress(); @@ -1818,10 +1823,6 @@ public class ConnectivityService extends IConnectivityManager.Stub { SystemProperties.set("net.dns" + j++, dnsString); } } - try { - mNetd.setDefaultInterfaceForDns(Integer.toString(netType)); - } catch (Exception e) { - Slog.e(TAG, "exception setting default dns interface: " + e);} for (int k=j ; k