Replying to Avatar hzrd149

Well jokes on me because this code actually works, I just never finished it enough to fully test it

nostr:nevent1qvzqqqqqqypzqfngzhsvjggdlgeycm96x4emzjlwf8dyyzdfg4hefp89zpkdgz99qyghwumn8ghj7mn0wd68ytnhd9hx2tcprfmhxue69uhkummnw3ezuargv4ekzmt9vdshgtnfduhsqgxprey4pqkdfqf90a0nyz2vls6x8ae6pt3k8rmf7dhkhmrwd7clsy0z7jdy

So without further ado I present to you Hyper SOCKS5 Proxy

This is a SOCKS v5 proxy server that can automatically connect to HyperDHT node and Holesail servers. This is cool because it lets any application that already supports SOCKS5 or HTTP proxies ( mainly web browsers ) to connect to hyper nodes

Let me show you can example

First we have to startup a http server and use holesail to make it available on hyper

Next, on a different machine we can connect to it using hyper-socks5-proxy and configure FireFox to use the proxy

https://v.nostr.build/3bcbJMX7XbaWMdfA.mp4

NOTE: besides this example ( tested on my LAN ) I have not tested anything else. but in theory it should be possible to host relays over hyperdht

The reason I had to convert the hex connection string ( hyperdht pubkey ) into a bech32 address was because the maximum length for a domain name is 63 characters. and the connection string is 64...

But encoding it to bech32 with a 4 character prefix makes it only 58. Its identical to how nostr npubs are encoded

Anyways here are the links to the code if you want to play around with it

https://github.com/hzrd149/hyper-address ( https://hzrd149.github.io/hyper-address/ )

https://github.com/hzrd149/hyper-socks5-proxy

https://github.com/hzrd149/hyper-http-proxy

This is also available on my custom umbrel app store. If for some crazy reason you want to run my untested code on your lightning node ( please don't )

https://github.com/hzrd149/umbrel-community-app-store

#pear #hyperdht #holesail #proxy #socks5

Okay lets see if this works. I setup a server and made it available on hypercore using #holesail

Its connection string is 066ed92add0f1b000409816229bfcb6bcf9bdf3ec0d73ff010a61d688fe4e830

For anyone who has nodejs installed, There are two things I want you to test

First connecting to the node using holesail cli. You can do this by running the `npx holesail 066ed92add0f1b000409816229bfcb6bcf9bdf3ec0d73ff010a61d688fe4e830` command then opening http://127.0.0.1:8989/

If it worked you should see the nginx welcome page ๐ŸŽ‰

Next I want to test using the SOCKS5 proxy I built

To start the proxy you can run `npx hyper-socks5-proxy start` then you will have to follow the instructions in this note to configure FireFox to use that proxy

nostr:nevent1qvzqqqqqqypzqfngzhsvjggdlgeycm96x4emzjlwf8dyyzdfg4hefp89zpkdgz99qyghwumn8ghj7mn0wd68ytnhd9hx2tcprfmhxue69uhkummnw3ezuargv4ekzmt9vdshgtnfduhsqgr7w6jkrccm7ynndymf8sllkhp76skkezjl3rcqfzdmr9xq692pvuppkk2f

Once you have firefox setup you should be able to go to this address http://hypr1qehdj2kapudsqpqfs93zn07td08ehhe7crtnluqs5cwk3rlyaqcqdhsfwd.hyper/ and see the nginx welcome page ๐ŸŽ‰

Let me know if you were able to connect, and if not what error you got

nostr:npub1h5t3asu90f2x48rxtcqkjvwhza7m6kngs7vjyanx8xqyswc6es2s4645z5 nostr:npub1h8nk2346qezka5cpm8jjh3yl5j88pf4ly2ptu7s6uu55wcfqy0wq36rpev and anyone else who is interested

Reply to this note

Please Login to reply.

Discussion

Works for me

Works for me, pretty sick !!

Didn't know if you'd still be hosting but it worked for me. Super fast too.

Its hosted on a small VM in the cloud, so not really behind a firewall. but I was still curious if everyone was able to access it

http://127.0.0.1:8989/ is working both in Firefox and Chrome with Holesail only. What value is Hyper Proxy adding I wonder?

The value of hyper proxy would be in letting it be placed behind a normal domain, as I understand it.

You could have a swarm of people (or multiple of your own computers) hosting a file or a webpage or something, and people could visit it at cadayton.com/page, instead of using or installing Holesail and some confusing key.

Unless Iโ€™m missing something, thatโ€™s what I think the main use would be of this.