You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
kayos@tcp.direct dcabc3f136
Fix: nil dereference in DNS resolver
10 months ago
.gitignore Add: .gitignore 1 year ago
LICENSE Add: LICENSE 10 months ago
README.md Fix typo 10 months ago
api.go Cached relay map 11 months ago
check.go Finally do the thing we set out to do in the beginning >_> 11 months ago
check_test.go Finally do the thing we set out to do in the beginning >_> 11 months ago
go.mod Improve testing 11 months ago
go.sum Refactor 11 months ago
relays.go Finally do the thing we set out to do in the beginning >_> 11 months ago
relays_test.go Finally do the thing we set out to do in the beginning >_> 11 months ago
sox.go Fix: nil dereference in DNS resolver 10 months ago
sox_test.go Add count and change timeout 10 months ago

README.md

mullsox

GoDoc Go Report Card IRC

mullsox is an overengineered toolkit to work with the mullvad API. It's designed for use when already connected to a mullvad VPN endpoint.

More specifically, it was built to help the user make use of all of the SOCKS proxies that are available via the internal 10.0.0.0/8 subnet while connected to mullvad servers. this allows you to utilize somewhere around 75-100 different outgoing IP addresses via SOCKS proxies all while only connected to one mullvad VPN server.

5 5 5 5 5

mullsox works great with prox5.

example of usage with prox5:

p5 := NewProxyEngine()
mc := mullsox.NewChecker()

if err := mc.Update(); err != nil {
	println(err.Error())
        return
}

incoming, _ := mc.GetAndVerifySOCKS()

var count = 0
for line := range incoming {
        if p5.LoadSingleProxy(line.String()) {
                count++
        }
}

if count == 0 {
        println("failed to load any proxies")
        return
}

if err := p5.Start(); err != nil {
        println(err.Error())
        return
}