0

Does anybody know why I cannot connect to the internet when my Server is down?

Problem:
1.) My Windows 7 machines cannot connect to the internet when my Windows 2012 server is down. 2.) My Windows Vista machines cannot connect to the internet when my Windows 2012 server is down.

Note: The browser error that I get is "...DNS address could not be found."
Note: The ping error that I get is "Could not find the host"
Note: LAN connections work

Setup:
► Server OS = Windows Server 2012 Essentials

    Web Server Role (IIS)
    DNS Server Role

► Modem
► Router (DHCP Server)
► Port Forwarding 53 (DNS)

Situation:
The problem presents itself under these conditions:

  1. I turn off the Server
  2. I remove port forwarding 53 (ie, I make my router the DNS Server again)

Summary:
When I attempt to stop forwarding the DNS role to my Server the rest of my computers still fail to access the internet.

Does anybody know why?

Thank you.

  • If the hosts are configure via DHCP to use your server as the DNS server, then it would make sense that your hosts cannot use DNS to resolve names to addresses. That does _not_ mean that your Internet is down. The Internet still works correctly, only the applications which use DNS can't resolve names to addresses. I would bet that you could still contact anything on the Internet. For example, try to ping 8.8.8.8 when your situation happens. – Ron Maupin Oct 01 '16 at 05:00
  • Your first sentence is what I believe I need to look into, but I don't fully understand. – FinPro.Online Oct 01 '16 at 05:39
  • Here are the answers to your questions:►1.) Yes, a ping of *"8.8.8.8"* works (when my server is down). 1a.) *However*, a ping of *"google.com"* does not work (when my server is down). – FinPro.Online Oct 01 '16 at 05:39
  • Technically, you **can** connect to the internet. You just can't resolve hostnames. If you know the IP address of a website, you could type that into the address bar and access the site. If your 2012 server is going to be down on a regular basis, you should configure public DNS servers on your client machines. – Charles Burge Oct 01 '16 at 09:44
  • @CharlesBurge | Yes. My "client" computers can still connect via direct IP Address calls. So, I guess I could configure public DNS servers on each client machine. It's just that I don't know anything about that, and it doesn't sounds ideal. I feel like I've discovered a symptom to a problem in my network setup. Is Google my best bet for the client machine DNS server configuration? – FinPro.Online Oct 01 '16 at 10:27
  • You best bet is to make sure your Windows 2012 server stays up. If you're going to rely on it for essential services (and DNS counts as an essential service), then do what you have to in order to make sure it doesn't experience downtime. – Charles Burge Oct 02 '16 at 02:44

2 Answers2

3

When your Windows 7 machines start up, they go through a DHCP discovery process to obtain an IP address and (most importantly for you) DNS settings.

DNS is used to resolve domain names (e.g. google.com) to IP addresses. This is essential for browsing the web. Without DNS you'd need to know the IP address of all the sites you intend to visit

When your server is powered off:

  1. DNS is down - so your Windows 7 clients can't resolve domain names to IP addresses (a broken internet experience)
  2. DHCP is down - so your Windows 7 clients can't retrieve new details via ipconfig /release or /renew

So that's why they can't browse the web.

As a quick fix, configure your server's DHCP role to provide Google DNS (8.8.8.8) as secondary. That way when your server is down, your Windows 7 clients will use Google DNS to resolve domain names instead - allowing the internet experience to continue

In the longer term, consider the following:

  • Does your server need to provide DHCP and DNS services at all? Or could you rely on your router for this?
  • If you do want to provide these services on your internal network, consider resilience options:
    • Bringing up multiple DNS servers on your network
    • Enable DHCP failover options
    • Depending on the size of your network, this could be overkill

Hope this helps!

  • @JamesFMackensi | ► 1.) No, I do not think my physical server needs to provide DHCP or DNS services. I've got it doing DNS because that was the only way I could broadcast my website. ► Note: I have a very small network (6-7 computers, 2-3 other devices). – FinPro.Online Oct 01 '16 at 21:20
  • How would you like to make your website available? Internally for your private network or on the public internet? In either case your server shouldn't need to host DNS/DHCP to achieve it. Thanks! – jamesfmackenzie Oct 03 '16 at 06:40
0

It sounds like you need to enable a better failover solution or simply allow the router to handle DNS all the time. I doubt the PC's are going to get the correct DNS settings until you do a release/renew on DHCP or perform a flushdns command. Even though you are removing the port forward, you are not removing the DNS settings in cache for each machine.

  • Thanks, Justin. Yes, I do believe I need to make use of the proper method. My initial goal = Get a Web Server to broadcast my website on the WWW. My initial method = Configure IIS + Activate DNS (IIS was to map ports to internal AppPools, DNS was for broadcasting). Long story short, I gave one Server two roles because that's the only way I could accomplish my goal. I'm not sure I did it the right way (this internet access problem is a reason for my doubts). – FinPro.Online Oct 01 '16 at 05:56
  • Here are the answers to your questions. 1.) No, unfortunately, running *ipconfig /release* did not solve the internet problem. 2.) No, unfortunately, running _ipconfig /renew_ did not solve the internet problem. 3.) No, unfortunately, running _ipconfig /flushdns_ did not solve the internet problem. 4.) No, unfortunately, none of these command combinations solved the internet problem. ►► Note: I ran all of these commands on my "client" computers. ◄◄ – FinPro.Online Oct 01 '16 at 05:59
  • When you changed the DNS back to the router, did you actually enable the DNS service or just remove the port forward? Does a router reboot fix it after the change? – JustinV Oct 01 '16 at 06:01
  • Here is another thought. On your server, configure a secondary DNS server. Use 8.8.8.8 or 75.75.76.76. If the server goes offline, the primary DNS will fail and should kick over to the secondary DNS. – JustinV Oct 01 '16 at 06:03
  • You can also have more than one DNS server on your local network. So you can enable DNS by default on your router and server. Remove the port forward. Add both DNS to your DHCP server settings. Make the router secondary. If the server goes offline, internet should stay by using the routers DNS. – JustinV Oct 01 '16 at 06:12
  • Reply to @justinV first comment: 1.) Both, I the problem arises when I disable the DNS service from the physical Server. The problem also arises when I simply remove/block port 53. 2.) Yes + No. I'll have to explain in my comment below. – FinPro.Online Oct 01 '16 at 06:25
  • Replty to +JustinV first comment Part II: 2a.) No, a Port_Block + Router_Restart does not resolve the issue. 2b) Yes, a Service_Stop + Router_Restart does resolve the issue. However, the connections are very slow (they always timeout/errorout midway through), and some website render their pages improperly (fandango.com). I actually thought that 2a would've worked instead of 2b. – FinPro.Online Oct 01 '16 at 06:28
  • I'm not sure how to configure a secondary DNS on the same machine. I tried something, but it just looks like another forward lookup zone. Also, I don't know how to make my router the secondary server for DNS and DHCP. I'm going to give it a shot right now, though. – FinPro.Online Oct 01 '16 at 06:41
  • Wat exactly do you mean by "broadcast your website on the www? And why do you think you need a DNS server on your web server in the first place? – Tero Kilkanen Oct 01 '16 at 08:14
  • @Tero | 1.) What I mean by "broadcast" is make my personally hosted website available on the world wide web. 2.) When I was setting it up, I could only view my website from my LAN. The only way I got it _broadcasted_ was by turning on DNS service and configuring the zone file. I figured that's what the DNS was there for. Is there a better way? – FinPro.Online Oct 01 '16 at 10:20
  • You get your web site visible on the web by configuring the DNS at your registrar so that the domain name points to your IP address. You don't need your own DNS for that. – Tero Kilkanen Oct 01 '16 at 15:55
  • Tero is correct. You also may have to add your external address to the binding configuration of the IIS settings. You still need to port forward to your web servers internal IP. Port 80 is default. – JustinV Oct 01 '16 at 16:01
  • @TeroKilkanen + JustinV | My Registrar = GoDaddy.com | From my experience, GoDaddy does not allow me to alter *my* DNS zone file on *their* website (CNAME, MX, NS, etc.). It only allows me to create the A Record. So, I've been doing DNS on my own. How else will I manage my DNS zone file? Well, I'll be testing out your recommendation via another domain name I purchased from them. – FinPro.Online Oct 01 '16 at 21:13