NAT配置实验_隧道模型受力及模型实验理解和认识

NAT配置实验_隧道模型受力及模型实验理解和认识Iodine介绍Iodine,直译过来就是碘。碘元素在元素周期表中序号为53,正好是DNS使用的端口号。该工具用于建立DNS隧道,其分为服务端和客户端两部分(也常称为主控端和被控端),客户端对服务器端发送DNS请求建立连接。这两部分都是用C语言编写,支持EDNS、base32、base64、base128等多种编码规范。DNS隧道常分为中继和直连两种类型,中继是指DNS通过外网DNS服务器转发到服务端,直连是指直接通过服务端IP进行连接。Iodine对这两种类型都有支持。同时,Iodine支持多种DN

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

Iodine介绍

Iodine,直译过来就是碘。碘元素在元素周期表中序号为53,正好是DNS使用的端口号。
该工具用于建立DNS隧道,其分为服务端和客户端两部分(也常称为主控端和被控端),客户端对服务器端发送DNS请求建立连接。这两部分都是用C语言编写,支持EDNS、base32、base64、base128等多种编码规范。
DNS隧道常分为中继直连两种类型,中继是指DNS通过外网DNS服务器转发到服务端,直连是指直接通过服务端IP进行连接。Iodine对这两种类型都有支持。同时,Iodine支持多种DNS查询类型,包括NULL,TXT,SRV,MX,CNAME,A等。
iodine原理:通过TAP虚拟网卡,在服务端建立一个局域网;在客户端,通过TAP建立一个虚拟网卡;两者通过DNS隧道连接,处于同一局域网(可以通过ping命令通信),在客户端和服务端之间建立连接后,客户机上会多出一块 “dns0” 的虚拟网卡。
DNS隧道流程:iodine客户端 -> DNS服务商 -> iodined服务端,由于客户端和服务端都在一个局域网,那么只需要直接访问服务端,如 3389 (直接使用 mstsc) 、22 (ssh 建立连接) 。
与同类工具相比,iodine具有如下几种特点:

->不会对下行数据进行编码
->支持多平台(Linux、Windows、MacOS)
->支持16个并发连接
->支持强密码机制
->支持同网段隧道IP低质(不同于服务器——客户端网段
->支持多种DNS记录类型
->提供了丰富的隧道质量检测措施

Jetbrains全家桶1年46,售后保障稳定

Iodine下载与安装

linux版本可以从github上clone相应库
https://github.com/yarrick/iodine
或者是从gitee上的镜像库进行克隆
https://gitee.com/mirrors_yarrick/iodine
然后进入安装的克隆的路径中使用make install命令对二进制文件进行编译。
如果在Win上的话,可以直接下载应用,但是需要先下载tap支持虚拟网卡。
tap:http://www.qudong51.net/qudong/981.html
Iodine: http://code.kryo.se/iodine/
然后在cmd上运行(需要使用管理员权限)

Iodine的使用

服务端

首先需要在服务端配置DNS服务器,具体方法见Ubuntu搭建DNS服务器。这里使用的服务器是Ubuntu 20.0.4版本。
接着使用命令行
sudo iodined -f -DD -c 192.168.206.130 zjytest1.com
这里192.168.206.130是新建的dns0网卡ip,zjytest1.com是DNS服务器中记录的域名。
随后键入DNS隧道的密钥
在这里插入图片描述

客户端

在客户端,键入命令行
sudo iodine -f -r -T A 192.168.1.110 zjytest1.com
这里使用的是直连模式,192.168.1.110是服务器端在内网的IP地址,-T A代表查询类型为A。
在这里插入图片描述
更多使用方法可以看官方文档

问题记录

1、无法连接到服务器端(已解决)
解决方法:第一步,检查服务器端与客户端是否能互ping。如果不能,解决互ping的问题。
第二步,检查服务器端的DNS服务(这里是bind9)是否正常。可以通过 host <域名>完成。如果正常的话,结果如下
在这里插入图片描述
如果不是,请检查bind配置是否正确。如配置无误,请删除/etc/resolv.conf中所有内容。
一般到这里,基本都可以正常连接。

2、如何利用DNS隧道(已解决)
理论上,在DNS隧道建立后,可以通过ssh进行远程控制,也可以通过nc发送文件,但是,出现端口无法连接的问题。
简单点说,就是我傻了。Iodine本身的功能仅仅是建立DNS隧道,绕过网关的防火墙,但是对于隧道的利用方式完全由使用者自己决定。所以,只要在服务端打开ssh,然后使用scp传输文件就可以了(傻球了,这种小事花了一天才想明白)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207164.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • GoLand 2021.2.3 激活码(在线激活)

    GoLand 2021.2.3 激活码(在线激活),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    524
  • vuex的五大核心_vue如何实现跨域

    vuex的五大核心_vue如何实现跨域Vuex的核心概念Vuex有5个核心概念,分别是State,Getters,mutations,Actions,Modules。StateVuex使用单一状态树,也就是说,用一个对象包含了所有应

    2022年7月29日
    5
  • DHCP协议工作流程

    DHCP协议工作流程一个全新主机的请求一次DHCP服务的过程主要包含以下四个步骤第一步:客户机操作系统生成一个DHCPdiscover发现报文,被放置在一个具有广播IP目的地址(255.255.255.255)和源IP地址为0.0.0.0的IP数据报中(网络层),发送到以太网,试图找到网络中DHCP服务器以获取一个IP地址。这一步可以简化为DHCPdiscover,源IP:0.0.0.0,目的IP:255.255.255.255,表示客户机说我需要一个IP,DHCP你在哪,能不能分我一个?第二步:当运行在路

    2022年5月23日
    46
  • MySQL重设密码_mysql重置密码命令

    MySQL重设密码_mysql重置密码命令1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。2.修改MyS…

    2022年10月16日
    2
  • 8.WLAN频段介绍_频段与信道「建议收藏」

    8.WLAN频段介绍_频段与信道「建议收藏」频段与信道1、ISM频段一、pandas是什么?二、使用步骤1.引入库2.读入数据总结1、ISM频段一、pandas是什么?示例:pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltimportseabornassnsimportwarningswarnings.fil

    2022年10月9日
    2
  • 深入了解ASMM

    深入了解ASMM每一个Oracle的初学者在入门阶段都会接触到SGA/PGA的知识,如果是从10g开始学习那么会多或少会对ASMM有所了解,从使用的角度来说ASMM的出现极大地简化了Oracle内存初始化参数的设置,在ASMM的使用上高级DBA和初学者不会有太大的差别;很多人因此而认为ASMM极大程度地减少了数据库对于专业DBA的依赖:如果我们有一个足够智能的DB,那么为什么还要花费金钱雇佣…

    2022年6月7日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号