Mam ten adres proxy: 125.119.175.48:8909
Jak mogę wykonać żądanie HTTP przy użyciu cURL curl http://www.example.com
, ale podając adres proxy mojej sieci?
Ogólny sposób:
export http_proxy=http://your.proxy.server:port/
Następnie możesz połączyć się przez proxy z (wielu) aplikacji.
I, zgodnie z komentarzem poniżej, dla https:
export https_proxy=https://your.proxy.server:port/
Od
man curl
:źródło
-x user:password@proxyhost:port
Powyższe rozwiązania mogą nie działać z niektórymi wersjami curl, które sam wypróbowałem (curl 7.22.0). Ale dla mnie zadziałało:
Mam nadzieję, że to rozwiązuje problem lepiej!
źródło
[1] 4812
Uwaga: jeśli używasz proxy SOCKS, zamiast proxy HTTP / HTTPS, musisz użyć
--socks5
przełącznika:Możesz także użyć
--socks5-hostname
zamiast--socks5
do rozwiązania DNS po stronie proxy.źródło
--socks5-hostname
.curl https://api.ipify.org --proxy socks5://189.100.246.182:37339
wydaje mi się, że działa dobrze. Czy--proxy
opcja jest w jakiś sposób gorsza niż w--socks5
przypadku korzystania z serwerów proxy socks5?--proxy
jest prawdopodobnie tym, czego chcesz teraz, ale nie zawsze było obsługiwane. Należy również pamiętać, żesocks5://
isocks5h://
wykonać rozpoznawanie nazwy hosta (DNS) odpowiednio przed i po połączeniu z serwerem proxy.jako dodatek do airween, innym dobrym pomysłem jest dodanie tego do twojego .bashrc, abyś mógł przełączyć się z środowiska bez proxy na proxy:
GDZIE TWOJA PROPORCJA: TWOJE SPRAWOZDANIE to dokładnie to, twój adres IP i port proxy :-).
Potem po prostu robię
Twój system zacznie używać proxy, i odwrotnie:
źródło
użyj następujących
curl -I -x 192.168.X.X:XX http://google.com
192.168.X.X:XX
podaj adres IP i port serwera proxy.-v
tryb pełny poda więcej szczegółów, w tym nagłówki i odpowiedź.źródło
możesz użyć :
jak wyjaśnił Karl
źródło
Lubię to używać, aby uzyskać adres IP, pod którym jestem widziany
Mam nadzieję, że to komuś pomoże.
źródło
Aby
curl
skonfigurować proxy w pliku~/.curlrc
(_curlrc
w systemie Windows), dodającproxy
wartość, składnia jest następująca:źródło
Podsumowując wszystkie świetne wspomniane odpowiedzi:
źródło
Z proxy z uwierzytelnianiem korzystam:
ponieważ nie wiem, dlaczego curl nie używa zmiennych środowiskowych / catch http [s] _proxy .
źródło
źródło
Nie musisz eksportować
http[s]_proxy
zmiennej powłoki, jeśli tylko ustawiasz proxy dla jednorazowej komendy. na przykładPowiedziałbym, że wolałbym,
curl -x
gdybym wiedział, że zawsze będę korzystać z serwera proxy.źródło
W zależności od miejsca pracy może być konieczne określenie opcji
-k
lub--insecure
opcji zwijania, aby uniknąć potencjalnych problemów z certyfikatami urzędu certyfikacji.źródło
źródło
W przypadku, gdy serwer proxy używa automatycznego serwera proxy z plikiem PAC. Rzeczywiste proxy możemy znaleźć w javascript z adresu URL PAC.
A jeśli serwer proxy wymaga uwierzytelnienia, możemy najpierw użyć zwykłej przeglądarki internetowej, aby uzyskać dostęp do strony internetowej, która promuje dialog uwierzytelniania. Po uwierzytelnieniu możemy użyć wireshark do przechwycenia wysyłanych pakietów HTTP do serwera proxy, z pakietu http możemy uzyskać token uwierzytelnienia z nagłówka http: Autoryzacja proxy
Następnie możemy ustawić zmienną środowiskową http_proxy, a także dołączyć token autoryzacji do nagłówka http: Autoryzacja proxy
eksport http_proxy = http: // serwer proxy: port
curl -H "Autoryzacja serwera proxy: xxxx" http: // targetURL
źródło