一文读懂 NAT打洞及实践

admin 2024年12月1日23:05:25评论7 views字数 1005阅读3分21秒阅读模式

本文为大家分享如何利用NAT打洞实现免费的公网IP。快来试试吧!

什么是NAT

你的IPv4地址是多少呢?如我们可以利用在线网站查找当前设备的公网IP。

一文读懂 NAT打洞及实践

可我们在路由器中查看时,你就会看到当前IP为100开头的IP地址。

一文读懂 NAT打洞及实践

这是怎么回事呢?运营商在 IPv4 中使用 NAT(网络地址转换) 技术,让许多设备共享一个公网 IP。当然,IP 的使用者不仅仅包括你家的设备,可能小区中的很多设备和你家的设备共享一个 IP。

什么是NAT打洞

NAT 打洞(NAT Traversal)是一种技术,它允许位于私有网络中的设备与外部世界建立直接的通信连接1。打洞的过程是指A向B的外网地址发送消息,一旦A与B都向对方的外网地址发送了数据包,就打开了A与B之间的“洞”,一旦应用程序确认已经可以通过往对方的外网地址发送数据包的方式让数据包到达NAT后面的目的应用程序,程序会自动停止继续发送用于“打洞”的数据包,转而开始真正的P2P数据传输。

一文读懂 NAT打洞及实践

开启NAT

在默认情况下,nat是关闭的。因此需要我们手动开启。现根据我们常见的家庭网络类型,简单说说开启步骤。

类型1
光猫桥接,路由器拨号

即,光猫只做光电转换。路由器拨号上网。因此,我们需要在路由器中进行相关配置就行了。

注:不同品牌的路由器,开启方式大同小异。

找到 高级设置 - DMZ(部分路由器叫做DMZ主机),打开DMZ 开关,并将地址指定为你的设备 IP 地址

一文读懂 NAT打洞及实践
类型2
光猫拨号,路由器 DHCP

这也是目前主流的网络连接方式。具体配置方式如下:使用超管密码,进入光猫后台。找到 安全 - 防火墙 - 安全级,改为

进入应用 - DMZ 主机 ,指定为路由器的 IP 地址(或 MAC 地址)

接着进入 应用 - UPnP,将其变为使能(启用

接下来,进入路由器后台 找到 高级设置 - DMZ 主机打开 DMZ 开关,并将地址指定为你的设备 IP 地址

打洞测试

我们可以使用Natter 进行打洞测试。首先下载项目到本地。

git clone https://github.com/MikeWang000000/Natter.git
#测试
python natter.py -m test
一文读懂 NAT打洞及实践

示例

将本地的22端口暴露在公网

python natter.py -p 22
一文读懂 NAT打洞及实践

连接

一文读懂 NAT打洞及实践
一文读懂 NAT打洞及实践
SSH登录

总结

利用NAT打洞,我们可以方便地将内网IP暴露在公网。但是唯一的不足是,因为IP地址是共享,所有IP地址在重启光猫或路由器后,可能会发生变化。

原文始发于微信公众号(kali笔记):一文读懂 NAT打洞及实践

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月1日23:05:25
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   一文读懂 NAT打洞及实践https://cn-sec.com/archives/3455055.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息