Documentation
¶
Index ¶
- Constants
- Variables
- func KillPlugin()
- func Redir6Local(addr, server string, shadow func(net.Conn) net.Conn)
- func RedirLocal(addr, server string, shadow func(net.Conn) net.Conn)
- func SocksLocal(addr, server string, shadow func(net.Conn) net.Conn)
- func StartPlugin(plugin, pluginOpts, ssAddr string, isServer bool) (newAddr string, err error)
- func TcpLocal(addr, server string, shadow func(net.Conn) net.Conn, ...)
- func TcpTun(addr, server, target string, shadow func(net.Conn) net.Conn)
- func UdpLocal(laddr, server, target string, shadow func(net.PacketConn) net.PacketConn)
- func UdpSocksLocal(laddr, server string, shadow func(net.PacketConn) net.PacketConn)
- type TcpPort
- type UdpPort
Constants ¶
View Source
const ( SO_ORIGINAL_DST = 80 // from linux/include/uapi/linux/netfilter_ipv4.h IP6T_SO_ORIGINAL_DST = 80 // from linux/include/uapi/linux/netfilter_ipv6/ip6_tables.h )
View Source
const GETSOCKOPT = syscall.SYS_GETSOCKOPT
Variables ¶
View Source
var Config struct { Verbose bool UDPTimeout time.Duration }
Functions ¶
func KillPlugin ¶
func KillPlugin()
func Redir6Local ¶
Listen on addr for netfilter redirected TCP IPv6 connections.
func RedirLocal ¶
Listen on addr for netfilter redirected TCP connections
func SocksLocal ¶
Create a SOCKS server listening on addr and proxy to server.
func StartPlugin ¶
func TcpLocal ¶
func TcpLocal(addr, server string, shadow func(net.Conn) net.Conn, getAddr func(net.Conn) (socks.Addr, error))
Listen on addr and proxy to server to reach target from getAddr.
func UdpLocal ¶
func UdpLocal(laddr, server, target string, shadow func(net.PacketConn) net.PacketConn)
Listen on laddr for UDP packets, encrypt and send to server to reach target.
func UdpSocksLocal ¶
func UdpSocksLocal(laddr, server string, shadow func(net.PacketConn) net.PacketConn)
Listen on laddr for Socks5 UDP packets, encrypt and send to server to reach target.
Types ¶
type TcpPort ¶
type TcpPort struct {
// contains filtered or unexported fields
}
func (*TcpPort) CloseRemote ¶
func (tp *TcpPort) CloseRemote()
func (*TcpPort) StartRemote ¶
func (tp *TcpPort) StartRemote()
type UdpPort ¶
type UdpPort struct {
// contains filtered or unexported fields
}
func NewUdpPort ¶
func NewUdpPort(addr string, shadow func(net.PacketConn) net.PacketConn) *UdpPort
func (*UdpPort) CloseRemote ¶
func (up *UdpPort) CloseRemote()
func (*UdpPort) StartRemote ¶
func (up *UdpPort) StartRemote()
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
Package core implements essential parts of Shadowsocks
|
Package core implements essential parts of Shadowsocks |
Package shadowaead implements a simple AEAD-protected secure protocol.
|
Package shadowaead implements a simple AEAD-protected secure protocol. |
Package shadowstream implements the original Shadowsocks protocol protected by stream cipher.
|
Package shadowstream implements the original Shadowsocks protocol protected by stream cipher. |
Package socks implements essential parts of SOCKS protocol.
|
Package socks implements essential parts of SOCKS protocol. |
Click to show internal directories.
Click to hide internal directories.