Override my ISP's "domain not found" page?

1

If I screw up typing a URL, my ISP shoots me over to their branded search page. So if I type "superuser" in my location bar I end up at http://domainnotfound.optimum.net/cablevassist/dnsassist/main/?domain=superuser

I'd like my browser to leave the location the way it was and just say "nothing doing," rather than redirecting me to a search.

Can I override that in my own /etc/hosts or at my router?

Amanda

Posted 2012-11-24T21:24:21.457

Reputation: 242

1I use comcast, which had the options in their Account pages. Try digging there (for the easiest solution). Otherwise, you could point to a differemt DNS (such as OpenDNS). – nerdwaller – 2012-11-24T21:27:38.743

Answers

5

Change your preferred DNS (it is probably set to use your ISP's). This activity you ISP is taking part in is something called "DNS Hijacking". Do a google search to learn more about it.

Here are several methods of getting around it.

If you have a DD-WRT or Tomato enabled router, you can even take it a step further and block your ISP's DNS entirely. Read this article for more information.

BrenanK

Posted 2012-11-24T21:24:21.457

Reputation: 336

1Perfect solution. Why is this answer not marked as correct? O_o – hcoverlambda – 2014-12-18T01:59:42.363

1Ok. First change your Primary DNS Servers, you may choose one by looking up public DNS servers online. Google for instance is 8.8.8.8 & 8.8.4.4. In addition, since DNS servers cache information, so although you may request DNS addresses from Google, your ISP's DNS might still send you certain IP's on Google's behalf. This is why the best method is to block your ISP's site at your router. With DD-WRT/Tomato routers, you can setup your own DNS, which you can configure to block your ISP's "Page not Found" site. You can explicitly state the hostnames which resolve to ISP servers are not valid. – BrenanK – 2012-11-25T01:10:49.907

1If you do not have a DD-WRT/Tomato Router, you can still setup your own DNS server on the same network with a linux box. The machine would have to be on most (if not all) of the time, to resolve DNS Hostnames. You could then configure your router to point to your linux box for DNS. Then all computers within your internal network would be using your DNS. – BrenanK – 2012-11-25T01:21:48.897

2FYI: To see how DNS is resolved, open CMD/Terminal and use nslookup. "Non-Authoritative" responses mean that another DNS server had a cached IP for the hostname you requested, and gave you that instead of actually asking your primary DNS. This is how your ISP utilizes DNS Hijacking, by returning a cached IP to their "Page not found" server, even though the lookup should've returned that the host doesn't exist. – BrenanK – 2012-11-25T01:24:18.717

2@Amanda, this is not a link-only answer. It clearly explained what the problem is by giving it a name which you can then use to find an answer. It also gave you a shortcut by providing a link to some options so that you don’t have to bother researching with the new, more useful terminology. Finally, it even gave you more advanced information that you are presumed not to end up using but might appreciate. +1 for addressing the question. I’d show you some examples of actual link-only answers, but they usually get edited or voted to deletion very quickly. – Synetech – 2012-12-02T00:58:25.463

@Synetech I neither flagged nor downvoted the answer. – Amanda – 2012-12-03T19:20:17.833

I didn’t say that you did. I merely explained why it is not a link-only answer. – Synetech – 2012-12-03T19:30:00.783

1

I see that you are using Optimum Online.

Their support pages contained an article which explains how to turn the feature off:

You can opt-out of the service from any DNS Assistance page. Simply click the About This Page button, click the Opt Out button and then restart your Web browser.

This will affect all users connected to your cable modem.

Michael Hampton

Posted 2012-11-24T21:24:21.457

Reputation: 11 744

0

Your /etc/hosts file is only for IP addresses, so if you wanted to JUST type in 'superuser' in your address bar and it go to 'superuser.com' then in your /etc/host file you'd add a line like this:

superuser    69.59.197.21

The problem with this is if 'superuser.com' changes its IP, you'll need to update your /etc/hosts file.

If you wanted to do it at your router, it would have to be able to be setup as an actual DNS server. If its a standard router you bought at store X chances are it has basic DNS implementation, not the full DNS server capabilities you'd want to implement what you're looking for.

So depends on what you want, if you just want to type in the name without going to www.com, then the /etc/hosts would be the easiest. If don't want ties to your ISP's DNS proxy configuration, then you'd need to implement one between you and your ISP.

EDIT: another alternative is to use one of the public/open DNS servers instead of your ISP (or even use one of the actual IANA root name servers). You can still grab an IP from your ISP so you can connect and route out, but then override the DNS servers with the alternative ones. Then when you make any sort of DNS request (which is pretty much anything on the net), you'll be getting your DNS queries from the alternatives and if they can't find it, you'll probably get a standard 'cant find' or 'timeout' back instead of being redirected to the ISP's internal 'not found' page. There's a bunch of open DNS servers that you can use, but I'd stick with the root servers since they have a little more accountability in tact with those (https://www.iana.org/domains/root/servers for the current list)

txtechhelp

Posted 2012-11-24T21:24:21.457

Reputation: 3 317

I should have been more clear (just edited) -- I don't want to change things per URL sub-string, I want not to be redirected ever, no matter what I type. – Amanda – 2012-11-24T22:09:41.337