目录 简介 支持DoT的DNS服务器 搭建支持DoT的netty客户端 TLS的客户端请求 总结 简介 在前面的文章中我们讲过了如何在netty中构造客户端分别使用tcp和udp协议向DNS服务器请求消息.在请求的过程中并没有进行消息的加密,所以这种请求是不安全的. 那么有同学会问了,就是请求解析一个域名的IP地址而已,还需要安全通讯吗? 事实上,不加密的DNS查询消息是很危险的,如果你在访问一个重要的网站时候,DNS查询消息被监听或者篡改,有可能你收到的查询返回IP地址并不是真实的地址,而是被…
目录 简介 DNS传输协议简介 DNS的IP地址 Do53/TCP在netty中的使用 搭建DNS netty client 发送DNS查询消息 DNS查询的消息处理 总结 简介 DNS的全称domain name system,既然是一个系统就有客户端和服务器之分.一般情况来说我们并不需要感知这个DNS客户端的存在,因为我们在浏览器访问某个域名的时候,浏览器作为客户端已经实现了这个工作. 但是有时候我们没有使用浏览器,比如在netty环境中,如何构建一个DNS请求呢? DNS传输协议简介 在R…
一.前言 在之前一篇文章已经介绍了一款网络访问软件的破解教程,当时采用的突破口是应用程序本身的一个漏洞,就是没有关闭日志信息,我们通过抓取日志获取到关键信息来找到突破口进行破解的.那篇文章也说到了,如果这个app应用没有日志信息,我们该怎么办呢?那么这时候就需要采用抓包来寻找突破口了. 二.安装Fiddler证书 我们通过Fiddler连接手机进行抓包查看,应用访问数据信息都是用的HTTPS协议,也就是加密的数据,我们可能无法查看,比较麻烦,本文就来讲解如何查看这些加密数据了. 首先我们知道Fi…
本文转自:http://www.wjdiankong.cn/wireshark%E5%92%8Cfiddler%E5%88%86%E6%9E%90android%E4%B8%AD%E7%9A%84tls%E5%8D%8F%E8%AE%AE%E5%8C%85%E6%95%B0%E6%8D%AE%E9%99%84%E5%B8%A6%E6%A1%88%E4%BE%8B%E6%A0%B7%E6%9C%AC/ 一.前言 在之前一篇文章已经介绍了一款网络访问软件的破解教程,当时采用的突破口是应用程序本身的一…
目录 简介 native传输协议的依赖 netty本地传输协议的使用 总结 简介 对于IO来说,除了传统的block IO,使用最多的就是NIO了,通常我们在netty程序中最常用到的就是NIO,比如NioEventLoopGroup,NioServerSocketChannel等. 我们也知道在IO中有比NIO更快的IO方式,比如kqueue和epoll,但是这两种方式需要native方法的支持,也就是说需要在操作系统层面提供服务. 如果我们在支持Kqueue或者epoll的服务器上,nett…
目录 简介 基本流程 CleartextHttp2ServerUpgradeHandler Http2ConnectionHandler 总结 简介 上一篇文章中,我们提到了如何在netty中配置TLS,让他支持HTTP2.事实上TLS并不是https的一个必须要求,它只是建议的标准.那么除了TLS之外,还需要如何设置才能让netty支持http2呢?一起来看看吧. 基本流程 netty支持http2有两种情况,第一种情况是使用tls,在这种情况下需要添加一个ProtocolNegotiatio…
目录 简介 netty中的websocket websocket的版本 FrameDecoder和FrameEncoder WebSocketServerHandshaker WebSocketFrame netty中使用websocket 总结 简介 websocket是一个优秀的协议,它是建立在TCP基础之上的,兼容HTTP的网络协议.通过Websocket我们可以实现客户端和服务器端的即时通讯,免除了客户端多次轮循带来的性能损耗. 既然websocket这么优秀,那么怎么在netty中使用…
目录 简介 定义protobuf 定义handler 设置ChannelPipeline 构建client和server端并运行 总结 简介 netty中有很多适配不同协议的编码工具,对于流行的google出品的protobuf也不例外.netty为其提供了ProtobufDecoder和ProtobufEncoder两个工具还有对应的frame detection,接下来我们会通过一个例子来详细讲解如何在netty中使用protobuf. 定义protobuf 我们举个最简单的例子,首先定义一…
目录 简介 服务端的CORS配置 CorsConfigBuilder CorsHandler netty对cors的支持 总结 简介 CORS的全称是跨域资源共享,他是一个基于HTTP-header检测的机制,通过对HTTP-header进行控制,可以实现对跨域资源的权限管理功能.在之前的CORS详解文章中,我们已经对CORS有了基本的解释. 本文将会从netty的实现角度,讲解如何在netty中实现CORS. 服务端的CORS配置 熟悉CORS的朋友应该知道,CORS所有的操作都是在HTTP协…
目录 简介 浏览器客户端 netty对websocket客户端的支持 WebSocketClientHandshaker WebSocketClientCompressionHandler netty客户端的处理流程 创建handshaker websocket消息的处理 总结 简介 在网速快速提升的时代,浏览器已经成为我们访问各种服务的入口,很难想象如果离开了浏览器,我们的网络世界应该如何运作.现在恨不得把操作系统都搬上浏览器.但是并不是所有的应用都需要浏览器来执行,比如服务器和服务器之间的通…