Как изменить IP-адрес запроса в HttpWebRequest?

Я разрабатываю веб-сайт, который будет подключаться к веб-сервису шлюза обработки кредитных карт. В целях безопасности этот веб-сервис принимает запросы только с IP-адресов, которые были им ранее сообщены.

Так как я развиваюсь локально, мой IP меняется почти каждый день. Есть ли способ для меня изменить IP-адрес HttpWebRequest, чтобы я мог проверить вызовы Webservice локально?

Доступ к этому веб-сервису осуществляется через адрес https, а методы должны отправляться через POST.

3 ответа

Нет, но если вам удалось изменить исходный IP-адрес ваших запросов, то то, что вы будете делать, называется IP-спуфингом. Проблема заключается в том, что исходный IP-адрес используется для маршрутизации ответов обратно на ваш компьютер, поэтому, поскольку вам каким-то образом удалось изменить IP-адрес в пакетах запросов, ответ никогда не вернется к вам, поскольку это не ваш IP-адрес.

Я знаю, что это старый пост. Но я смог получить эту работу для меня, надеюсь, что она будет полезна для тех, кто нуждается в аналогичной проблеме

  ServicePointManager.Expect100Continue = true;
            if (System.Web.HttpContext.Current.Request.IsLocal)
            {
                webRequest.ServicePoint.BindIPEndPointDelegate = delegate(
                ServicePoint servicePoint,
                IPEndPoint remoteEndPoint,
                int retryCount)
                {
                    return new IPEndPoint(
                        IPAddress.Parse("192.168.1.1"),
                        0);
                };
            }

Возможно, вы захотите проверить JSONP, если ваши данные в кодировке JSON, так как именно для запроса данных с веб-сервера, отличного от того, который отправляет исходную веб-страницу.

Другие вопросы по тегам