局域网不能用域名访问服务器

局域网服务器对外提供多种应用服务 , 包括WWW、FTP、SIP等,都是通过域名的方式访问的,路由器通过PPPOE拨号上网,获得公网的IP地址,然后分别映射不同的端口对应每一种服务,WWW映射为99,FTP映射为28,SIP端口映射为5089,所有的外网的用户都可以访问这些应用服务器, 网站访问方式为http://yourdomain:99 访问是WWW服务,以此类推,但是和这些服务器在同一局域网的电脑却无法通过这种方式访问这些服务器 , 必须要通过内网的IP地址 http://ipaddress:99 这样的形式才可以正常访问到,这给项目的测试、实施、日常使用带来极大不便,实际发生这个问题的原因是路由器不支持端口回流的功能导致,作为普通用户总需要记住来回切换网络,如果忘记了 , 就不能正常访问了,使用比较混乱 , 有什么解决方案呢?
【局域网不能用域名访问服务器】网上有说可以采用VLAN 的方式解决,把普通用户和服务器分别放在不同的VLAN中就可以实现了,这个说法是无法解决这个问题,因为VLAN 本身之间就是不让相互访问才设置的VLAN, 现在又让他们能访问,就没有必要设置VLAN了 , 所以没有测试过的解决方案都是不靠谱的 , 都是理论的 , 甚至理论基础都没有,一厢情愿 。
我们这里采用的解决方案是编辑修改本地电脑的hosts文件,让用户无论通过内网还是外网都可以实现通过域名加端口的方式进行这些服务的操作:

局域网不能用域名访问服务器

文章插图
这个文件的位置在C:WindowsSystem32driversetc ,每台电脑通过这样的设置以后,就都可以正常访问了,这是最简单的解决路由器不支持端口回流的方法;注意虽然编辑器使用的记事本,但是保存的时候不能保存为TXT的文件,还保存为原先的文件格式 。
另外的方法是,申请两条宽带,一条专门接服务器,另一台接局域网客户端 , 实现分开上网操作,如同都是通过外网访问内网的效果 。
如果路由器支持端口回流,那是最理想的,以上的解决方案就都用不上了 。