Могу ли я использовать http-туннель для ping или traceroute через прокси-сервер с брандмауэром?

Я не знаю, есть ли способ пинговать цель вне моего прокси-сервера LAN, который принимает только Http-запросы через прокси-сервер squid... Я где-то читал, что один из способов справиться с такой проблемой-использовать http-туннель, чтобы прокси-сервер все еще видел запрос как Http-запрос. Могу я использовать это,чтобы пинговать, скажем, www.google.com что в противном случае дает следующую ошибку, потому что брандмауэр отклоняет запрос:

$ ping www.google.com
ping: unknown host www.google.com

если да, то как это делается...?

Я установлен сайт httptunnel.Любая помощь в том, как ее использовать, будет очень признательна.

2 ответов


нет. Ping и traceroute используют сетевые протоколы нижнего уровня (ICMP и/или UDP, в частности, которые являются протоколами уровня 4) и не будут работать над туннелем HTTP (Уровень 7). В любом случае, даже если вы сможете убедить HTTP-прокси открыть для вас необработанный сеанс TCP (так работает некоторое http-туннелирование), вы не получите необходимые пакеты для подтверждения того, что хост достижим. (ICMP echo reply, в случае ping, или истек срок действия ICMP пакетов в случае traceroute)

чтобы проверить подключение в этой ситуации, я думаю, что лучшее, что вы можете сделать, это HTTP "ping". (Попробуйте установить HTTP-соединение с удаленным хостом и посмотреть, работает ли оно.) Например, вы можете сделать что-то вроде:

$ http_proxy=http://webproxy.example.com:3128 \
> curl -I http://google.com/ > /dev/null 2>&1 \
> && echo success || echo failure

Если у вас есть curl установлен, это будет печатать "успех", если google.com доступен через ваш прокси-сервер и "сбой", если нет.


это не совсем то, что вы искали, но если вы можете получить доступ и внешний ssh-сервер, вы можете запустить его через это, и результаты будут отражать время пинга на ssh-сервер:

$ ssh username@server 'ping -c 1 google.com' 
PING google.com (72.14.204.147) 56(84) bytes of data.
64 bytes from iad04s01-in-f147.1e100.net (72.14.204.147): icmp_seq=1 ttl=57 time=2.64 ms

--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 2.640/2.640/2.640/0.000 ms