0

I have around 79mbps internet down and I'm using a MacBook Pro 13" 2016 w/ TouchBar. Whenever I go to a website (on both Safari and Chrome) both browsers seem to pause their progress bar for a second or two before loading the site. After the site is initially loaded, interactions within it are very quick. For example, it takes a couple seconds to connect to youtube.com, but I can load and stream a 1440p video instantly once I'm in. Is there anything I can try to change on my Mac to try and stop it from "waiting" ?

I have a feeling this is related to DNS resolution since only the initial connection to the website is slow. I checked the DNS settings on my Mac and this is what I see:

enter image description here

Apparently the only DNS server it has is on the local network? Seems wrong.

I'm using macOS Sierra 10.12.2 and my ISP is Comcast

Thanks for any advice!

EDIT:

I've replaced the single DNS entry shown below (my router) to 8.8.8.8, Google's DNS. This seems to have solved the issue but I will leave the question open to see if anyone has a better idea, or to know if I've done something horribly wrong :)

  • Domestic routers can often respond well to the old "turn it off then back on again" trick. Some need it daily :/ Often if you have a DNS issue it's either your router or your ISP. First needs a reboot, 2nd they will usually fix in a day or two. You already found the third, which is to swap to Google DNS for a few days then check back to see if 2 has been fixed. – Tetsujin Jun 14 '17 at 18:51
2

192.168.86.1 is probably an okay setting if it's the LAN IP address of your home gateway router, but it sounds like either your router's DNS relay process is going slow, or your router's DNS relay process is using a list of upstream DNS servers that includes one or more servers that are not fast or reliable.

Some things to try:

  • Check what DNS server IP addresses your router is using, and test them with a tool like dig; one of them might be having problems.
  • Consider changing your router's settings so it's using a faster / more reliable set of DNS server IP addresses.
  • Consider rebooting your router if it's become slow at relaying DNS requests. Maybe it has a memory leak that slows it down over time.
  • Consider changing your router's settings so its DHCP service serves out a list of fast/reliable DNS servers to clients, so clients bypass the built-in DNS relay of the router, if the router's DNS relay agent is the source of the added latency.
  • Consider manually configuring your clients to use a list of fast/reliable DNS servers.

Background:
It's common for home gateway routers, when giving out NAT-private IP address leases via DHCP, to give out their own LAN-side IP address as the DNS server address, rather than giving out whatever DNS server address the ISP's upstream router gave them. So assuming 192.168.86.1 was your home gateway, that setting is reasonable.

This is done because DHCP doesn't provide a way for a DHCP server to push new settings to DHCP clients at the time that a setting changes. So if the home gateway's link to the ISP went down and came back up, and when it came back up, if the ISP sent a different set of DNS server IP addresses for clients to use, the gateway wouldn't have any way to push that new setting to the clients. So instead, the gateway asks all its clients to use the gateway as their DNS server, so it can always relay their DNS requests to whatever DNS servers the ISP has told it to use. It also means that if your ISP is giving you crappy DNS servers, you can fix the problem for your whole home network just by changing what upstream DNS servers your home gateway is set to use. So you don't have to go around to all your clients setting them to 8.8.8.8 or whatever.

This scheme has a downside of making your home gateway router a possible bottleneck for all DNS lookups. So if it's underpowered or buggy and can be slow at being a DNS relay, it adds latency to all your DNS lookups from any device on your network. In this case, it's good to make all your clients talk directly to fast/reliable DNS servers. You can either manually configure your clients for this, or you can change the settings in your router's built-in DHCP server process to make it serve out a better list of DNS server addresses when it gives out new DHCP leases to your clients.

  • Thank you so much for not only a list of possible solutions but also for providing a background. I'm using Google WiFi hardware so I thought they'd be the best people to figure all of this out already :) – Carpetfizz Jun 14 '17 at 4:19
  • 1
    @Carpetfizz Well-managed local DNS servers should be lower latency than Google DNS, but a lot of ISP's DNS servers are not as well-managed as they should be. It would be cool if Google Wifi compared latency with the local ISP-provided servers and Google DNS, and used whichever was faster. – Spiff Jun 14 '17 at 4:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.