Jak sprawdzić wyjściowy adres IP proxy
Porównaj adres widziany przez cel ze skonfigurowanym punktem proxy i nie myl drugiej strony połączenia curl z wyjściowym IP.
Mierz wyjściowy IP po stronie celu. Adres na liście proxy to punkt nasłuchu, z którym łączy się klient; NAT, routing lub kolejny węzeł wyjściowy mogą pokazać celowi inny adres źródłowy.
Porównaj ten sam punkt sprawdzania IP z proxy i bez niego. Szybki publiczny przykład:
curl --noproxy '*' --connect-timeout 5 --max-time 15 https://httpbin.org/ip
curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 15 https://httpbin.org/ipZastąp adres dokumentacyjny swoim działającym punktem. Dla wpisu z listy proxy HTTP odróżniaj adres nasłuchu i zaobserwowane wyjście. Pierwsze żądanie omija proxy tam, gdzie dozwolony jest dostęp bezpośredni; drugie usuwa reguły omijania i wybiera proxy. Usługa otrzyma oba, więc nie wysyłaj prywatnych danych, ciasteczek ani tokenów.
Sprawdź zgłoszony adres, nie tylko HTTP 200. Inny, oczekiwany adres wspiera ocenę trasy użytej przez to żądanie. Jeśli wyniki są takie same, zbadaj reguły omijania i konfigurację, zanim uznasz wpis za fałszywy.
Sprawdź, co mierzy usługa IP
Wynik origin httpbin może używać X-Forwarded-For, gdy ten jest obecny. Może zawierać łańcuch zamiast rzeczywistego adresu drugiej strony socketu, co jest ważne zwłaszcza przy nieszyfrowanym przekazywaniu HTTP. Gdy liczy się dokładność, lepszy jest własny punkt: zapisuj rzeczywistego partnera na znanej granicy sieci i ufaj nagłówkom przekazywania tylko wtedy, gdy twoja infrastruktura je dostarcza i weryfikuje.
Adres, który curl już zna
curl --proxy http://203.0.113.10:8080 --noproxy '' --output /dev/null --write-out 'peer=%{remote_ip}\n' https://example.com/remote_ip wskazuje drugą stronę połączenia curl, w tym przykładzie zwykle punkt proxy HTTP. Pomaga ustalić, gdzie połączył się curl, ale nie obserwuje wychodzącego adresu źródłowego proxy. Na drugie pytanie odpowiada wynik po stronie celu.
Powtórz sprawdzenie w aplikacji, która użyje proxy. Udane żądanie curl nie konfiguruje przeglądarki: profile, rozszerzenia, reguły omijania i aplikacje ignorujące ustawienia systemowe mogą wybierać inne trasy. Jeśli ważna jest lokalizacja, sprawdź zaobserwowany adres wyjściowy i zapisz punkt proxy oraz wyjście wraz z wynikiem.