0

是否可以使用 curl 将数据发布到 Web 表单但更改源 IP 地址?

如果 curl 不能帮助我,还有其他想法吗?

谢谢你的时间-A

4

2 回答 2

1

在 curl FAQ 中得到解决,答案是:

不,libcurl 在更高级别上运行。此外,伪造IP地址意味着发送带有虚构源地址的IP数据包,然后您通常会在接收发回的数据包时遇到问题,因为它们不会被路由给您!

如果您使用代理访问远程站点,这些站点将不会看到您的本地 IP 地址,而是会看到代理的地址。

另请注意,在许多网络上使用 NAT 或其他 IP 转换技术,使您在本地看到和使用不同于远程服务器将看到您来自的 IP 地址。您也可以考虑使用http://www.torproject.org

于 2013-08-28T07:12:54.090 回答
0

您可以利用CURLOPT_PROXYCURLOPT_POST解决您的问题。下面的示例代码。

<?php
    $url = 'http://somesite.com/form.php';
    $proxy = '127.0.0.1:8888';
    $postVar ='postvar1=value1&postvar2=value2&postvar3=value3';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_PROXY, $proxy);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,$postVar);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 1);
    $curl_page = curl_exec($ch);
    curl_close($ch);

    echo $curl_page;
于 2013-08-28T07:17:47.030 回答