如何实现内网映射到公网?

  • Post author:
  • Post category:其他

有些时候我们需要把自己的笔记本当做服务器连接到公网上,以便让自己的小项目能够被其他人访问或者看到。正常情况,我们台电脑上网都应该是配备了一个公网ip的。但是呢,不幸的是我们的电脑所分配到的ip都是内网ip,因此我们无法让外部公网访问到我们的电脑。

绝大多数的IP地址都是公有地址,需要向国际互联网信息中心申请注册。但是在IPv4地址协议中预留了3个IP地址段,作为私有地址,供组织机构内部使用。这三个地址段分别位于A、B、C三类地址内:A类地址:10.0.0.0–10.255.255.255 B类地址:172.16.0.0–172.31.255.255 C类地址:192.168.0.0–192.168.255.255
那么我们如何实现内网映射到公网呢?笔者以下做了两种测试:一起来看看

第一种:懒人做法。可以去网上搜索内网映射公网ip软件,按照流程安装设置映射端口,开启就可以了。另外还需要查看防火墙设置。

以下是我使用的软件:路由侠
软件界面
软件界面操作简单,一看便懂。如果还不会用右下角==》使用教程。开启映射后,你的pc电脑就能与外界的公网ip联通了。

第二种:接下来我主要说第二种(毕竟第一种没有啥技术含量_),我已经实现的目的是本地已经搭建好的网站,通过 “localhost:端口号/项目名”  \  “127.0.0.1:端口号/项目名” 可以本机访问,通过 “内网IP:端口号/项目名” 可以局域网内访问了,接下来要通过外网(公网)来访问本地网站。通过“我映射好的的公网ip:端口/项目名”可以外网访问本地网站。

第一步: 在路由器设置虚拟服务器,设定转发规则和端口。

简单的说,设置虚拟服务器就是,设置局域网里哪台主机的哪个端口来接收服务器要接收的数据。具体来说,就是让路由器在收到 WLAN 端的数据包后,在转发时选择我们设置的内网IP和端口号来转发数据包。不同路由器的具体操作不尽相同,我这里的路由器是linksys, 大体步骤为:

1、连接路由发出的网络后,访问192.168.1.1 或 192.168.0.1 或路由器上贴着的提示域名网址,输入密码登录管理路由器。

2、找到相关设置(高级设置->高级用户)里的 “虚拟服务器” 设置页面,来添加转发规则。

3、添加一条转发规则,其中“外部端口” 是访问外部IP时使用的端口号, “内部端口(默认为80端口)”是在本地访问网站时使用的端口号, IP地址是本机的内网IP,协议类型TCP

按理来说,按照上图这样设置好转发规则之后,通过百度搜索“IP”得到的IP(我得到的是 61.144.105.245)和 外部端口号,使用“ 61.144.105.245:8899/BesBlog ”就可以访问我本地的网站了,可是给我的提示一直是拒绝访问。

第二步:被忽视的路由ip地址

最后我查找到为什么一直被拒绝了,原来我的路由ip地址也不是公网ip,网络运营商在给我提供上网功能的时候,不一定会给到我们一个全球唯一的公网IP,我们自己路由“WLAN端” 得到的IP可能还是另一个局域网内的IP; 还可能有这么一种情况:拉的联通的带宽,分配的IP只能在联通内部访问,移动网络不能访问。这个IP最多只能算是“联通内的公网IP”,不是真的公网IP。这就为难人了

你可以上www.ip138.com去查看自己的内网ip是那个公网ip,最好是询问服务商客服,能拿到一个公网ip就更好了(基本不可能)。

如果你的路由ip是公网ip,却还是无法通过外网+端口访问本地项目时,那最大的可能就是你的端口号被屏蔽了,这就需要去服务商客服了解了。

第三步:防火墙

我们都知道,电脑要更外界联通都是要通过防火墙的,防火墙就是保证电脑安全的一个保障。但有些时候,它也会把我们自己设置的端口,服务等等给屏蔽了,这样就无法达到自己预期的效果了。所以防火墙设置要有的,最简单的就是关闭它(不建议)。
最后的最后,你通过上面三步的设置后,外网可以访问你的本地项目了,那么恭喜你,你每年剩下了几百大圆的开销。
如果还是不行奉劝你尽早放弃,哈哈哈。其实现在购买个服务器也不贵,少买两件衣服,少抽几包烟就可以了,而却还不用当心病毒或黑客攻击。但是作为一名码农,自然要有探索精神。

参考:
设置了虚拟服务器,外网还是无法访问内网服务器怎么办?
如何判断自己外网IP是否为真实公网IP,以及解决方案
自己的服务器做网站服务之解决动态IP无公网IP端口80被封HTTP被屏蔽的方法
结合我的关于phpStudy如何修改默认网站来设置自己本地的网站为默认打开站点。

终于到了尾声了,啊~~~~!我的老腰啊!希望你能喜欢我的文章。谢谢


版权声明:本文为qq_26486949原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。