Permalink
Browse files

update readme

  • Loading branch information...
1 parent 6c9754e commit 206241684440e37e0fff7fb72a37b43ce15a1d55 @igrigorik committed Nov 7, 2011
Showing with 10 additions and 5 deletions.
  1. +9 −4 README.md
  2. +1 −1 lib/hydra/version.rb
View
@@ -2,26 +2,31 @@
Given a list of hosts hydra opens a pool of SOCKS5 tunnels and routes incoming requests via a random tunnel. In effect, hydra is a regular SOCKS5 proxy, except that each outbound request is automatically load-balanced.
-[img]
+![hydra overview](misc/hydra.png)
Hydra uses SSH to establish the SOCKS5 tunnels and [em-proxy](https://github.com/igrigorik/em-proxy) to provide the transparent routing for any SOCKS5 compatible client.
## Getting started
```
$> gem install hydra
-$> hydra --listen 8080 --hosts host1,host2 --key ssh_key.pub --verbose
+$> hydra --listen 8080 --hosts host1,host2 --key ssh_key.pub --user name --verbose
```
```ruby
-c = Curl::Easy.new('http://whatismyip.org')
+c = Curl::Easy.new('http://jsonip.com')
c.proxy_url = 'localhost:8080'
c.proxy_type = Curl::CURLPROXY_SOCKS5
+
c.perform
-c.body_str
+c.body_str # => => {"ip":"72.52.131.237"}
+c.perform
+c.body_str # => => {"ip":"34.22.124.45"}
```
+Of course, you can also convert hydra into a proper HTTP proxy by deploying [privoxy](http://www.privoxy.org/) or an equivalent tool in front.
+
## License
The MIT License - Copyright (c) 2011 Ilya Grigorik
View
@@ -1,3 +1,3 @@
module Hydra
- VERSION = "0.0.1"
+ VERSION = "0.1.0"
end

0 comments on commit 2062416

Please sign in to comment.