Recently I replaced my old router with the Linksys E4200V2. I have a personal server, which is a DMZ host in my home network. I can access the server via the public IP of the router, since DMZ is set. But it only works when I access from an external network, e.g. when I'm at work or using my phone via 3G. Within the home network, it seems the traffic isn't forwarded to the DMZ. It was not a problem with the old router, which is much cheaper than the Linksys E4200V2.

I couldn't find an option to fix the problem in the router's admin page. The closest was "Filter Internet NAT Redirection for IPv4 Internet Only" in the Security > Firewall section but it didn't work.

There are two ways to work around it I can think of.

The first is running my own name server, which resolves the domain name of the public IP of the router to the internal IP of the DMZ host. But it was too slow, about 600% slower than OpenDNS name servers.

The second option is changing the /etc/hosts file in my MacBook when I'm in the home network. I can do this automatically with crankd. The downside is I can't do the same for my iPad and iPhone.

Is there any better way to solve this problem?


It seems port forwarding works (with firewall disabled) while DMZ doesn't, so I disabled DMZ and allowed necessary ports to be forwarded. I used to think DMZ is convenient and port forwarding is bothersome, but I'm changing my mind.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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