Shadowsocks ලේඛන
සංචලනය
Shadowsocks වින්යාස ආකෘතිය
ගොනුව වින්යාස කරන්න
Shadowsocks JSON ආකෘති වින්යාසයන් ගනී:
{
"සේවාදායකය":"my_server_ip",
"server_port":8388,
"local_port":1080,
"මුරපදය":"barfoo!",
“ක්රමය”:”chacha20-ietf-poly1305″
}
JSON ආකෘතිය
- සේවාදායකය: ඔබගේ සත්කාරක නාමය හෝ සේවාදායක IP (IPv4/IPv6).
- server_port: server port number.
- local_port: ප්රාදේශීය වරාය අංකය.
- මුරපදය: මාරු කිරීම සංකේතනය කිරීමට භාවිතා කරන මුරපදයකි.
- ක්රමය: සංකේතාංකන ක්රමය.
සංකේතාංකන ක්රමය
අපි අපගේ සේවාදායකයන් වින්යාස කරන අතර ඔබට chacha20-ietf-poly1305 AEAD කේතාංකය භාවිතා කරන ලෙස නිර්දේශ කරන්නේ එය සංකේතනය කිරීමේ ප්රබලම ක්රමය වන බැවිනි.
ඔබගේම shadowsocks සේවාදායකය වින්යාස කරන්නේ නම්, ඔබට "chacha20-ietf-poly1305" හෝ "aes-256-gcm" වලින් එකක් තෝරාගත හැක.
URI සහ QR කේතය
Android / IOS සඳහා Shadowsocks ද BASE64 කේතනය කරන ලද URI ආකෘති වින්යාසයන් ගනී:
ss://BASE64-Encoded-STRING-WITHOUT-PADDING#TAG
සරල URI විය යුත්තේ: ss://method:password@hostname:port
ඉහත URI RFC3986 අනුගමනය නොකරයි. මෙම අවස්ථාවෙහි මුරපදය සාමාන්ය පෙළ විය යුතුය, සියයට-කේතනය නොකළ යුතුය.
උදාහරණය: අපි 192.168.100.1:8888 හි සේවාදායකයක් භාවිතා කරමු භාවිතා bf-cfb සංකේතාංකන ක්රමය සහ මුරපදය පරීක්ෂණය/!@#:.
ඉන්පසුව, සරල URI සමඟ ss://bf-cfb:test/!@#:@192.168.100.1:8888, අපට BASE64 කේතනය කළ URI ජනනය කළ හැක:
> console.log( “ss://” + btoa(“bf-cfb:test/!@#:@192.168.100.1:8888”) )
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg
මෙම URI සංවිධානය කිරීමට සහ හඳුනා ගැනීමට උදවු කිරීමට, ඔබට BASE64 කේතනය කළ තන්තුවෙන් පසුව ටැගයක් එක් කළ හැක:
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server
ඇමතීම
Shadowsocks SOCKS5 ලිපින ආකෘතියේ ඇති ලිපින භාවිතා කරයි:
[1-බයිට් වර්ගය][විචල්ය-දිග සත්කාරක][2-බයිට් තොට]
අර්ථ දක්වා ඇති ලිපින වර්ග මෙන්න:
- 0x01 : සත්කාරක යනු 4-byte IPv4 ලිපිනයකි.
- 0x03 : සත්කාරක යනු විචල්ය දිග තන්තුවකි, එය 1-බයිට් දිගකින් ආරම්භ වන අතර පසුව උපරිම 255-බයිට් ඩොමේන් නාමයකින් ආරම්භ වේ.
- 0x04 : සත්කාරක යනු 16-byte IPv6 ලිපිනයකි.
තොට අංකය බයිට් 2ක විශාල-එන්ඩියන් අත්සන් නොකළ පූර්ණ සංඛ්යාවකි.
TCP
ss-local client විසින් ss-remote වෙත සබැඳුමක් ආරම්භ කරන්නේ ඉලක්කගත ලිපිනයෙන් ආරම්භ වන ගුප්තකේතනය කරන ලද දත්ත යැවීමෙන් පසුව ගෙවීම් දත්ත යැවීමෙනි. භාවිතා කරන කේතාංකය අනුව සංකේතනය වෙනස් වේ.
[ඉලක්ක ලිපිනය] [ගෙවීම්]
ss-දුරස්ථය සංකේතනය කළ දත්ත ලබා ගනී, පසුව ඉලක්ක ලිපිනය විකේතනය කර විග්රහ කරයි. එවිට එය නව TCP සම්බන්ධතාවයක් නිර්මාණය කර ඉලක්කය වෙත ගෙන ඒම වෙත ගෙවීම් දත්ත ඉදිරිපත් කරයි. ss-remote හට ඉලක්කයෙන් පිළිතුරක් ලැබෙන අතර පසුව දත්ත සංකේතනය කර එය විසන්ධි වන තෙක් එය නැවත ss-local වෙත යොමු කරයි.
අපැහැදිලි අරමුණු සඳහා, දේශීය සහ දුරස්ථ විසින් පළමු පැකට්ටුවේ යම් ගෙවීමක් සමඟ අතට අත දීමේ දත්ත යැවිය යුතුය.
UDP
ss-local විසින් ඉලක්කගත ලිපිනය සහ ගෙවීම් සහිත සංකේතනය කළ දත්ත පැකට්ටුව ss-දුරස්ථ වෙත යවයි.
[ඉලක්ක ලිපිනය] [ගෙවීම්]
සංකේතනය කළ පැකට්ටුව ලැබුණු පසු, ss-දුරස්ථව ඉලක්ක ලිපිනය විකේතනය කර විග්රහ කරයි. ඉන්පසුව එය ගෙවීම සමඟ නව දත්ත පැකට්ටුවක් ඉලක්කයට යවයි. ss-remote විසින් ඉලක්කයෙන් දත්ත පැකට්ටු ලබා ගන්නා අතර එක් එක් පැකට්ටුවේ ඇති ගෙවීම් සඳහා ඉලක්ක ලිපිනය පෙරනිමිති. සංකේතාත්මක පිටපත් ss-local වෙත ආපසු යවනු ලැබේ.
[ඉලක්ක ලිපිනය] [ගෙවීම්]
මෙම ක්රියාවලිය ss-local සඳහා ජාල ලිපින පරිවර්තනයක් සිදු කරමින් ss-දුරස්ථ ලෙස තාපාංක කළ හැක.