xray:
tcp:
{
"log": {
"loglevel": "debug"
},
"inbounds": [{
"port": 20022,
"protocol": "dokodemo-door",
"settings": {
"address": "127.0.0.1",
"port": 22,
"network": "tcp"
},
"tag": "tcp-forwarding"
}],
"outbounds": [{
"protocol": "socks",
"settings": {
"servers": [{
"address": "127.0.0.1",
"port": 1080
}]
},
"tag": "socks5-out"
}],
"routing": {
"rules": [{
"type": "field",
"inboundTag": ["tcp-forwarding"],
"outboundTag": "socks5-out"
}]
}
}
udp:
{
"log": {
"loglevel": "debug"
},
"inbounds": [
{
"tag": "udp-dns53",
"port": 53,
"listen": "127.3.2.1",
"protocol": "dokodemo-door",
"settings": {
"address": "208.67.220.220",
"port": 5353,
"network": "udp"
}
}
],
"outbounds": [
{
"protocol": "socks",
"settings": {
"servers": [{
"address": "127.0.0.1",
"port": 1080
}]
},
"tag": "s5-1080out"
}
],
"routing": {
"rules": [{
"type": "field",
"inboundTag": ["udp-dns53"],
"outboundTag": "s5-1080out"
}]
}
}
测试:
nslookup -type=A -port=53 g.cn 127.3.2.1;
gost:
tcp:
curl -4kLO https://github.com/go-gost/gost/releases/download/v3.0.0-nightly.20250530/gost_3.0.0-nightly.20250530_linux_386.tar.gz
tar -xvf gost_3.0.0-nightly.20250530_linux_386.tar.gz ;
./gost -L tcp://:80/127.0.0.1:4080 -F socks5://127.0.0.1:1080 ;
udp:
curl -4kLO https://github.com/go-gost/gost/releases/download/v3.0.0-nightly.20250530/gost_3.0.0-nightly.20250530_linux_386.tar.gz
tar -xvf gost_3.0.0-nightly.20250530_linux_386.tar.gz ;
./gost -L=udp://:153/208.67.220.220:5353 -F="socks5://127.0.0.1:1080?udp=true&bind=true&relay=udp" ;
#测试
# dig @127.0.0.1 -p 153 +short go.dnscheck.tools TXT ;
socat(不支持udp):
# socat -dd TCP-LISTEN:4460,fork SOCKS5:127.0.0.1:162.159.200.123:4460,socksport=1080
cygwin64 源码编译socat_socks5_socat源码-CSDN博客
/usr/local/bin/bin/socat -v -d exec:'whoami',pty,stderr,setsid,sigint,sane SOCKS5:127.0.0.1:ncip_xx.xx.xx.xx:ncport_xx,socks5port=1080
Administrator@lvAA ~
$ /usr/local/bin/bin/socat -hhh | grep -C6 socks
socket-recvfrom:<domain>:<type>:<protocol>:<local-address> groups=FD,SOCKET,CHILD,RANGE
socket-sendto:<domain>:<type>:<protocol>:<remote-address> groups=FD,SOCKET
socks is an alias name for socks4
socks4:<socks-server>:<host>:<port> groups=FD,SOCKET,CHILD,RETRY,IP4,IP6,TCP,SOCKS4
socks4a:<socks-server>:<host>:<port> groups=FD,SOCKET,CHILD,RETRY,IP4,IP6,TCP,SOCKS4
socks5:<socks-server>:<host>:<port> groups=FD,SOCKS5,SOCKET,CHILD,RETRY,IP4,IP6,TCP
socks5-client is an alias name for socks5
stderr groups=FD,FIFO,BLK,REG,SOCKET,TERMIOS,UNIX,IP4,IP6,UDP,TCP,SCTP
stdin groups=FD,FIFO,BLK,REG,SOCKET,TERMIOS,UNIX,IP4,IP6,UDP,TCP,SCTP
--
sockopt-int is an alias for setsockopt-int
sockopt-string is an alias for setsockopt-string
socks5pass groups=SOCKS5 phase=SPECIFIC type=STRING
socks5port groups=SOCKS5 phase=SPECIFIC type=STRING
socks5user groups=SOCKS5 phase=SPECIFIC type=STRING
socksport groups=SOCKS4 phase=LATE type=STRING
socksuser groups=SOCKS4 phase=LATE type=STRING
socktype is an alias for so-type
sourceport groups=UDP,TCP,SCTP phase=LATE type=UNSIGNED-SHORT
Administrator@lvAA ~
$