Правила> Настройка правил. Выделите OnBeforeRequest.
Там вы можете получить IP-адрес клиента, используя свойство oSession["X-CLIENTIP"]
, и если вы не удовлетворены значением, сделайте что-то вроде oSession.oRequest.FailSession(403, "Proxy access denied", "You are not permitted to use this site.");
Обновление по автору вопроса
Пример используемого скрипта:
// restrict usage to IPs and ranges
if (oSession["X-CLIENTIP"].indexOf(/*My Business, modify to your IP range>*/"0.0.0.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*private*/"192.168.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*localhost*/"127.0.0.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*private*/"10.") != 0
) {
oSession.oRequest.FailSession(403, "Proxy access denied", "Your IP# is not permitted to use this Fiddler debugger.");
return;
}
Также обратите внимание, что IPv6 может привести к неожиданным последствиям, потому что X-CLIENTIP может быть
192.168.100.139
или ::ffff:192.168.100.139
На этом этапе программист может рассмотреть возможность использования таких тестов регулярных выражений, как этот, который соответствует любому из воплощений IP #:
/^(?:\:\:ffff\:)?192\.168\..+/.test(oSession["X-CLIENTIP"])