I am using a proxy to connect to internet. I can use firefox and software center. but can not ping google. when I try it says
ping google.com
ping: unknown host google.comI have tried with ip address also. it says Destination Host Unreachable.
please help. Thanks in advance.
53 Answers
ping doesn't work through proxy.
But you can use utility httping for that. It sends a HEAD request (by default) to a web server and measures the time it took to get a response.
Example:
httping -x 192.68.1.12:1080 -g Example output:
➜ ~ httping -x localhost:1080 -g -c 3
PING google.com:80 (/):
connected to 64.233.165.113:80 (313 bytes), seq=0 time= 38.49 ms
connected to 64.233.165.101:80 (313 bytes), seq=1 time= 66.94 ms
connected to 64.233.165.100:80 (313 bytes), seq=2 time= 40.79 ms
--- ping statistics ---
3 connects, 3 ok, 0.00% failed, time 3162ms
round-trip min/avg/max = 38.5/48.7/66.9 msWhere:
-x- Address of a proxy server, port is optional-g- URL to send a request to
Other useful options:
-5- Use SOCKS5. Should be put after the-xoption, i.e.:httping -x localhost:1080 -5 -g-c- How many probes to send before exiting. Infinite by default.-G- Do a GET request instead of a HEAD request. That means that also full page/file will be transferred. Note that in this case you're no longer measuring the latency! Useful for testing actual websites.
Be noticed that the time measured also includes the latency introduced by the proxy server itself.
The utility is available through a number of repositories for different OS'es and Linux distros:
Ubuntu:
sudo apt install httpingAlpine:
sudo apk add httpingmacOS with Homebrew:
brew install httpingHere is a link to the author's website:
For bash commands you have to set the proxy seperately. For this, you have to set a environment variable, e.g.:
ping google.com # can't resolve, no proxy set
export http_proxy=proxy.example.com:1234
ping google.com # works, proxy set for this bash session.Replace the address and the port with your proxy configuration. If you're always behind this proxy, add the export http_proxy... command to ~/.bashrc so it gets executed every time you start a new bash session.
Or to execute a single command with proxy settings and without setting environment variables, use env, e.g.:
env http_proxy=proxy.example.com:1234 ping google.com
sudo env http_proxy=proxy.example.com:1234 apt-get install cowsayTo use other services, e.g. HTTPS or FTP you have to set different variables:
export https_proxy=proxy.example.com:1234
export ftp_proxy=proxy.example.com:1234 5 Try this:
Open a terminal. Ctrl + Alt + T
Run it:
$ sudo -i
# nano /etc/bash.bashrcPut the following lines in the file:
export http_proxy=
export https_proxy=
export ftp_proxy=
export socks_proxy=socks://my_proxy_server:3128/Ctrl + U, paste. Ctrl + O, save file. Ctrl + X, close nano.
$ sudo -i
# nano /etc/environmentPut the following lines in the file
http_proxy=
https_proxy=
ftp_proxy=
socks_proxy=socks://my_proxy_server:3128/Ctrl + U, paste. Ctrl + O, save file. Ctrl + X, close nano.