C#访问webservice如何伪造调用者的ip
本帖最后由 Pojie1999.0909 于 2019-9-20 22:01 编辑表达能力欠佳,不知道是不是讲的明白,就是我要调用一个webservice,但是这个webservice有验证,用我计算机调用这个webservice的时候提示我ip非法,我知道一个不非法的ip是多少,但由于某些特殊原因我不能修改我计算机的ip,我该如何用我这个c#程序访问他的webservice的时候伪造我的ip呢? 除非利用代{过}{滤}理,否则没有可能,简单伪造头可以修改ip,但这样你就得不到返回值。 china0sen 发表于 2019-9-20 19:17
除非利用代{过}{滤}理,否则没有可能,简单伪造头可以修改ip,但这样你就得不到返回值。
是这样的,webservice放到了A服务器,B计算机和C计算机都能ping通A服务器,只不过B的ip没有备案,调用webservice的时候提示ip非法,C的ip备案了可以正常调用。我写了个winform程序放到了B上,想把请求伪造成C的ip。这样就可以调用了。只不过不知道怎样用代码伪造呢?
请问,这样可不可以吗? 不知道对方是如何判断IP地址的……,你加一个X-Forwarded-For和X-Real-IP这两个HTTP头试试能否绕过。
如果还是无法绕过,那就没有办法了,IP无法伪造。 JemmyloveJenny 发表于 2019-9-20 19:27
不知道对方是如何判断IP地址的……,你加一个X-Forwarded-For和X-Real-IP这两个HTTP头试试能否绕过。
如果 ...
谢谢回复 Pojie1999.0909 发表于 2019-9-20 19:23
是这样的,webservice放到了A服务器,B计算机和C计算机都能ping通A服务器,只不过B的ip没有备案,调用web ...
在c上面搭建代{过}{滤}理服务器,然后b利用c的代{过}{滤}理去访问a china0sen 发表于 2019-9-20 19:51
在c上面搭建代{过}{滤}理服务器,然后b利用c的代{过}{滤}理去访问a
谢谢,不知怎样在C上搭建代{过}{滤}理服务器呢?
我的C# winform程序应该使用WebProxy?例如:
this.accessService = new TmriJaxRpcOutNewAccessService()//这是通过wsdl生成的我要引用的webservice的类
{
Url = this._serviceAddress//这是webservice的地址,例如:http://192.168.100.100:8090/services/
};
string proxyip = Properties.Settings.Default.proxyip;//代{过}{滤}理ip
int proxyport = Properties.Settings.Default.proxyport;//代{过}{滤}理端口
if (Properties.Settings.Default.proxyip != "")
{
System.Net.WebProxy owebProxy = new System.Net.WebProxy(proxyip.Trim(), proxyport);//创建代{过}{滤}理
owebProxy.UseDefaultCredentials = true;
this.accessService.Proxy = owebProxy;
} 学习学习 入门小白 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Proxy = new WebProxy(proxyUrl, true); //如:http://123.123.123.123:80 bookaccount 发表于 2019-9-20 20:51
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Proxy = new WebProxy(pro ...
感谢回帖,我用的不是这个,已解决,谢谢。
页:
[1]
2