中文请点击这里.
rsock ist weder Beschleuniger noch VPN. Es verwandelt lediglich eine UDP-Verbindung in mehrere gefälschte TCP-Verbindungen oder mehrere normale UDP-Verbindungen oder beides. Mit udp ist es sehr ähnlich, da es nicht zuverlässig ist und keine Flusskontrolle, keine Timeout-Neuübertragungsalgorithmen usw. hat. Es ist plattformübergreifend . Es soll zusammen mit kcptun oder einem anderen UDP-Client mit ARQ verwendet werden. Der Zweck von rsock besteht darin, etwaige QOS an UDP vom ISP zu verhindern. Es unterstützt Windows, Mac und Linux . Um die Einführung und Verwendung von kcptun zu sehen, klicken Sie hier. Und Schattensocken, klicken Sie hier.
WIEDERHOLUNG : Die Datenübertragung von rsock ist NICHT zuverlässig. Für eine zuverlässige Datenübertragung sollte auf App-Ebene (kcptun) gesorgt werden.
Das folgende Bild zeigt kurz die Prinzipien
Es gibt vorkompilierte Binärdateien für 64-Bit-Linux, 64-Bit-Mac und x86/x64-Windows. Sie können hier heruntergeladen werden.
Für Windows- Benutzer müssen Sie zuerst winpcap installieren. winpcap
Für andere Plattformen können Sie den Quellcode herunterladen und selbst kompilieren. Die Zusammenstellungsanleitung finden Sie hier
Denken Sie daran, eine Firewall-Regel hinzuzufügen, wenn die Firewall aktiviert ist.
Nehmen Sie Linux als Beispiel:
# port=10000
# while [ $port -le 10010 ]
do
sudo ufw allow $port
port=$[ $port + 1]
done
Dies bedeutet, dass der Client Verbindungen zum Server über Port 10000 bis 10010 herstellen darf. ( RSock verwendet standardmäßig den Portbereich 10001–10010. Wenn Sie den Standardwert ändern möchten, lesen Sie bitte den Abschnitt „Parametererklärung“. )
sudo ./server_rsock_Linux -t 127.0.0.1:9999
Parametererklärung:
127.0.0.1:9999, Zieladresse, auch bekannt als Adresse des kcptun-Servers, auf dem gearbeitet wird.
Nehmen Sie als Beispiel den Mac:
sudo ./client_rsock_Darwin --taddr=xxxx -l 127.0.0.1:30000
Parametererklärung:
-t xxxx , Adresse des RSock-Servers。Achtung. Dies unterscheidet sich vom Server. Es enthält nur IP.
-l, lokal abgehörte UDP-Adresse, auch Zieladresse des kcptun-Clients (die durch -t angegebene Adresse).
Wenn rsock nicht funktioniert, müssen Sie prüfen, ob Ihre Netzwerkkarte winpcap unterstützt. Und Router filtern möglicherweise auch Pakete, insbesondere wenn Sie Windows verwenden.
Für Windows-Benutzer ist die Geschwindigkeit viel langsamer als bei Rsock auf Mac/Linux. (500-800 KB/s während meines Tests) z. B. Auf Mac/Linux kann rsock das reibungslose Ansehen von 1080P-YouTube-Videos unterstützen. Für Windows-Benutzer unterstützt RSock nur 720P-YouTube-Videos.
ps axu|grep rsock
sudo kill -SIGUSR1 pid # pid is id of rsock. It's 72294 in image above.
-t, --taddr=[addr] target address. e.g. 8.8.8.8:88,7.7.7.7. Required.
-l, --ludp=[addr] local listened udp address. Only valid for client. Required by client.
-d, --dev=[device] name of network interface card of Internet.e.g,eth0, en0. rsock can auto detect right device to work on. Use this when the default can't work.
-h, --help Display help menu. Not available now.
-f json config file
--lcapIp=[ip] Internet IP. Can omit the -d if this parameter sepcified. rsock can auto detect right device to work on. Use this when the default can't work.
--unPath Local unix domain socket. Not available now.
-p, --ports=[...] tcp/udp port list for rsock server. e.g.10001,10010(2 ports); 10001-10010(11 ports); 80,443,10001-10010(12 ports). **NO** white spaces allowed. Default value: 10001-10010
--duration=[timeSec] Time for app connection to persist if no data is transfered in the app connection. unit: seconds. defalt 30s
--hash=[hashKey] Not for encryption. Only for judgement if data belong to rsock. REPEAT: rsock don't encrypt data. Encryption is done by kcptun.
--type=[tcp|udp|all] type of communication. One of tcp, udp or all. Default is tcp.
--daemon=[1|0] Run as daemon. 1 yes. 0 no. default 1.
-v verbose mode. (Better not change default value. There is an unsolved bug that will cause slow speed right now)
--log=[path/to/log] Directory of log. Will create if not exist. Default: /var/log/rsock
--cap_timeout timeout of libpcap. Don't change this value if know what it really means.
Da wir im TCP-Modus keine Daten vom Socket senden/empfangen, wird eine Bestätigung mit der Länge 0 gesendet, die dem Peer die nächste erwartete Sequenz mitteilt. Dies liegt am Standard. Und das wird Bandbreite verschwenden.
Objekte vergleichen: rsock, kcptun
digitalocean NY vps. 1 GB RAM
rsock (nur TCP, 11 Ports). 1,25 Mio
rsock (nur UDP, 11 Ports). 1,5 Mio
rsock(doc/tcp und udp, jeweils 11 Ports. 1,1 Mio
kcptun. Am schnellsten, etwa 1,5 MB.
rsock (nur TCP, 11 Ports). 1,4 Mio
rsock(nur UDP, 11 Ports. 1,7 Mio
rsock(udp und tcp, jeweils 11 Ports)900K. Ich habe es zweimal getestet. Die Geschwindigkeit ist langsamer.
kcptun. extrem schnell. Ungefähr 2 MB.
Hinweis: Es gibt keine Hinweise darauf, dass der Sock umso schneller ist, je mehr Ports er nutzt. Dies hängt hauptsächlich von Ihrer Bandbreite ab.
rsock hat nur 70–90 % Geschwindigkeit von kcptun.
Wenn Sie keine Netzwerkverbindung finden, überprüfen Sie bitte, ob rsock und kcptun noch ausgeführt werden.
Sie können fließende Befehle ausführen, um Folgendes zu überprüfen:
ps axu|egrep 'kcptun|rsock'
Es wird dringend empfohlen, dass der kcptun-Server und der rsock-Server im Hintergrund laufen. Führen Sie für den kcptun-Server Folgendes aus:
nohup sudo -u nobody ./server_linux_amd64 -r ":port1" -l ":port2" -mode fast2 -key aKey >/dev/null 2>&1 &
Für den RSock-Server muss nur der Parameter --daemon=1
angegeben werden
Wenn die Server normal laufen, versuchen Sie, den kcptun-Client neu zu starten (schalten Sie Shadowsocks ein/aus, dadurch wird kcptun neu gestartet).
rsock verschlüsselt keine Daten . Die Verschlüsselung erfolgt auf App-Ebene (kcptun).
udp2raw-tunnel
kcptun-raw
icmptunnel
Refactor-Code.
Fügen Sie eine zufällige Portüberwachung hinzu.
Leerlaufmodus hinzufügen. Stellen Sie nicht wiederholt eine Verbindung zum Server her, wenn für einen bestimmten Zeitraum keine Daten vorhanden sind.
Fügen Sie weitere gefälschte Verbindungen hinzu. zB ICMP, DNS.