我已经搜索并找到了许多不同的资源,这些资源描述了如何在fiddler
中获取client IP
地址。
public static BindUIColumn("ClientIP")
function CalcMethodColClientIP(oS: Session){
if (null != oS.oRequest) return oS.oFlags["X-ClientIP"]; else return String.Empty;
}
我相信oSession.clientIP
也应该奏效。首先,给我的只是 127.0.0.1。它没有告诉我机器的IP地址,只是本地主机loopback
IP地址。我正在寻找机器的实际 IP 地址。
我的主要目标是在另一个人的计算机上运行的fiddlercap
捕获中获取客户端 IP 地址。这个人把拨弄机原木发给我,我和小提琴手一起看。我想用小提琴手检索他机器的 IP 地址。我怎样才能做到这一点?
任何帮助将不胜感激。谢谢。
不幸的是,默认情况下,FiddlerCap 日志不会提供此信息。我曾考虑添加一个按钮来自动捕获计算机信息(例如,从 MSInfo32 中捕获(作为捕获中的会话,但这从未实现。
X-ClientIP
字段仅保存客户端用于与代理通信的 IP 地址;在几乎所有情况下,这都是127.0.0.1
。
Well, if it SharePoint Server you can get on the server, run
Get-SpServer | Select ID
然后在 fiddler 中使用以下代码查看 SharePoint Server 响应的内容。 只需将以下代码添加到 Main(( 函数入口点即可。您将在 CRTL F>规则>自定义规则中找到此信息,以查找要添加此代码的 Main(( 函数。一个你做到了。您将有一个 EncodedServerId 列,您将看到唯一标识您的 SharePoint Server 的 get-spserver ID 的后半部分。您将获得服务器场中每台服务器的 ID,并且无论哪个负载平衡器发送了响应,您都将知道哪个服务器发送了响应。
public static BindUIColumn("EncodedServerId",65,1)
function CalcMachineId(oSession: Session){
if (null != oSession.oResponse && oSession.oResponse.headers!= null) {
if (oSession.oResponse.headers.Exists("SPRequestGuid") || oSession.oResponse.headers.Exists("request-id")){
if(oSession.oResponse.headers.Exists("SPRequestGuid")){
var requestGuid = Guid.Parse(oSession.oResponse.headers["SPRequestGuid"]);
}
else{
var requestGuid = Guid.Parse(oSession.oResponse.headers["request-id"]);
}
var bytes = requestGuid.ToByteArray();
var partOne = parseInt(bytes[8]) << 12;
var partTwo = parseInt(bytes[9]) << 4;
var partThree = parseInt(bytes[10]) >> 4;
var id = partOne + partTwo + partThree;
return String.Format("{0}",id);
}
return String.Empty;
} return "None";
}