
fiddler实际上是通过代理的方式来工作的。默认端口是8888,所以用来请求http的客户端,需要设定代理,就能被截获并记录。这种方式必须依赖fiddler进程正常工作。
以下是java设置代理的一种方式。具体要看使用什么客户端程序了。不同的客户端程序设置代理的方式肯定不一样。
Proxy proxy = new Proxy(java.net.Proxy.Type.HTTP,new InetSocketAddress("127.0.0.1", 8888))URL serverUrl = new URL(url)
HttpURLConnection conn = (HttpURLConnection) serverUrl.openConnection(proxy)
样例:
package com.http
import java.io.BufferedReader
import java.io.InputStreamReader
import java.net.HttpURLConnection
import java.net.InetSocketAddress
import java.net.Proxy
import java.net.URL
public class Http302Redirect {
public static void main(String[] args) {
try {
String url = "http://weibo.com/1253711052"
System.out.println("访问地址:" + url)
Proxy proxy = new Proxy(java.net.Proxy.Type.HTTP,
new InetSocketAddress("127.0.0.1", 8888))
裤枝 URL serverUrl = new URL(url)
HttpURLConnection conn = (HttpURLConnection) serverUrl
.openConnection(proxy)
conn.setRequestMethod("GET")
conn.addRequestProperty("Accept-Charset", "UTF-8")
conn.addRequestProperty("User-Agent",
镇行 "Mozilla/5.0 (Windows U Windows NT 5.1 zh-CN rv:1.9.2.8) Firefox/3.6.8")
conn.addRequestProperty("Referer", "http://weibo.com")
胡旅敏 conn.connect()
BufferedReader reader = new BufferedReader(new InputStreamReader(
conn.getInputStream()))
StringBuffer buffer = new StringBuffer()
String line = reader.readLine()
while (line != null) {
buffer.append(line).append("\r\n")
line = reader.readLine()
}
reader.close()
conn.disconnect()
System.out.println(buffer)
} catch (Exception e) {
e.printStackTrace()
}
}
}
Wireshark数据包解析:在Wireshark中关于数据包的叫法有三个术语,分别是帧、包、段。
Wireshark分析数据包
在Wireshark中的数据包都可以称为是网络数据。每个网络都有许多不同的应用程序和不同的网络涉及。但是一些常见的包中,通常都会包括一些登录程序和网络浏览会话。
捕获访问网站的数据包,并保存该文件名为http-wireshar.pcapng。
接下来通过该捕获文件中的数据,分析访问Web的整个过程。在该捕获过程中,将包含DNS请求、响应、TCP三次握手等数谈昌据。
在该界面31帧,是DNS解析为一个IP地址的数据包(被称为一个“A”记录)。32帧表示返回一个与主机名相关的IP地址的DNS响应庆侍旁包。如果客户端支持IPv4和IPv6,在该界面将会看到查找一个IPv6地址(被称为“AAAA”记录)。此时,DNS服务器将响应一个IPv6地址或混杂的信息。
在该界面看客户端和服务器之间TCP三次握手(33、34、35帧)和客户端请求的GET主页面(36帧)。誉橡然后服务器收到请求(37帧)并发送响应包(38帧)。
当客户端从相同的服务器上再次请求访问另一个链接时,将会再次看到一个GET数据包(1909帧)。
注意:
如果链接另一个Web站点时,客户端将再次对下一个站点进行DNS查询(156、157帧),TCP三次握手(158、159、160帧)。
31帧是客户端请求百度,通过DNS服务器解析IP地址的过程。标识为“A”记录。
32帧是DNS服务器回应客户端请求的过程。标识为response。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)