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传输文件就可以了(傻球了,这种小事花了一天才想明白)。

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • flask框架搭建步骤_flask 部署

    flask框架搭建步骤_flask 部署Flask框架搭建(一)创建一个Flask框架1、打开pycharm专业版,创建一个flask框架项目,如图:这里的虚拟环境是创建项目之前已经创建好的虚拟环境2、点击创建按钮,跳转到项目主界面,如图:由上图可以看出项目的结构,如图:解析一个应用程序创建完成Flask项目,会自动生成一个应用程序,代码如下:fromflaskimportFlaskapp=Flask(__name__)@app.route(‘/’)#/就是指路由defhello_world

  • 最新手机号段归属地数据库(2018年4月)[通俗易懂]

    最新手机号段归属地数据库(2018年4月)[通俗易懂]2018年4月1日版  382140条记录最新 手机号段数据库号码归属地数据库  全面 准确 规范字段包括省份城市运营商邮编区号等信息,对于数据分析、号码归属地查询等非常有帮助更新历史: 2018-02-01381409条记录2018-01-01380157条记录2017-12-01377357条记录2017-11-01373606条记录 2017-10-013690…

  • spring cloud和dubbo的主要区别[通俗易懂]

    spring cloud和dubbo的主要区别[通俗易懂]1.springcloud有注册中心eurekaDubbo无用第三方的zookeeper2.Dubbo使用RPC通讯协议,提供序列化方式如下:Dubbo:Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。RMI:RMI协议采用JDK标准的java.rmi.*实现,采用阻…

  • 案例:EVE和ENSP对接LLDP协议「建议收藏」

    案例:EVE和ENSP对接LLDP协议「建议收藏」1.EVE与ENSP使用cloud对接LLDP协议(拓扑)2.思科开启LLDP(EVE需使用2018年后的L2/L3IOU才支持LLDP功能)Switch(config)#lldprun//思科全局运行开启lldpSwitch(config)#inte0/1Switch(config-if)#lldptransmitSwitch(config-if)#lldpreceive//接口下开启lldp传送与接受华为开启LLDP[Huawei]lldpenableInfo:Glo

  • windows下 python中报错ImportError: No module named ‘requests’

    windows下 python中报错ImportError: No module named ‘requests’

    2021年10月28日
  • Oracle Insert BLOB

    Oracle Insert BLOB来源于:http://arjudba.blogspot.com/2008/06/how-to-insert-blob-dataimage-video-into.htmlHowtoInsertBlobdata(image,video)intooracleBLOBsizeInthispostitisshownhowIcaninsertBlob

发表回复

您的电子邮箱地址不会被公开。

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