forked from v2ray/v2ray.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
search_index.json
1 lines (1 loc) · 447 KB
/
search_index.json
1
{"index":{"version":"0.5.12","fields":[{"name":"title","boost":10},{"name":"body","boost":1}],"ref":"url","documentStore":{"store":{"./":["1.16","chatroom","contact","content","core","email","gener","gitbook","github","host","https://gitter.im/v2ray/v2ray","https://twitter.com/projectv2ray","latest","[email protected]","manual","modifi","pgp","pleas","pull","repo","request","send","site","telegram:https://telegram.me/projectv2ray","troubl","twitter","updat","us","user","v2ray","version","visit","websit","welcom","world","you'd"],"chapter_00/00_about.html":["10.7","12.04","14.04","2.6.23","6","7","7、arch","8、ubuntu","amd64","arm","arm64","cento","debian","go","id","ip","linux","mac","os","pac","v2ray","vista","vmess","window","x","x86"],"chapter_00/01_versions.html":["1.0","1.1","1.5","1.6","2015.11.30","2015.12.07","2015.12.14","2016.01.11","2016.01.18","2016.01.25","2016.02.01","2016.02.08","2016.02.22","2016.02.29","2016.03.07","2016.04.18","2016.05.01","2016.05.16","2016.05.29","2016.06.05","2016.06.12","4","5","7","adoot","ae","alterid","blackhol","bug","cento","chacha20","chenxiaoqino","chinaip","chinasit","debian","dn","docker","dokodemo","door","go","http","inbounddetourhandl","instal","ip","iptabl","log","loglevel","netcooki","none","ota","proxi","release.sh","shadowsock","sock","tcp","ubuntu","udp","v1.0","v1.1","v1.10","v1.11","v1.12","v1.12.1","v1.13","v1.14","v1.15","v1.16","v1.2","v1.3","v1.4","v1.5","v1.6","v1.7","v1.8","v1.9","v1.9.1","v2ray","vmess","wiki"],"chapter_00/02_donate.html":["0.9","1","10","18","19.89","1wybcx61yyycrbqv91nnfzfdemc8doqsx","2015.09.30","2015.10.02","2015.10.17","2015.11.11","2016.01.26","2016.02.12","2016.02.17","2016.02.22","2016.02.24","2016.02.26","2016.03.31","2016.04.21","25","4166.10","5","50","9.972","a*****u","amazon","btc","card","ch","[email protected]","g","ge****[email protected]","gift","gyft.com","han***ft","ji********[email protected]","ke*****uo","m","paypal","penn","q","s*******@gmail.com","v******[email protected]","v2ray","xy****[email protected]","zw*****oo"],"chapter_00/pgp.html":["0pvo/dx6tqs8iv/ardpbpazulostwxkrri2+jqmeokeplsdyprmv9bcgymda8n6w","1itmysunrwgol/utrnyskz2pozx6yfxrdzytuwir0vclw50tffkiocaot3q5fpco","1m29n3c7nz6+abyuynxjgdhkozatuegfjrglzqrod7gb+xtxhbjqkr6jnylzbao5","2xh2yvtbntl9zifdpwq8d7+emgcstkyqcdy6izdd3coeb2stmug31hjs3eftmsrt","3eglp0vn+16difru4h62tqms/xsvxib90c4c1tq4fndvszv896/ipllkzdrtgn85","3rt9egqtjklle8e57rqnd3e8gpm6lwx8uyxo1asfxayjjvf+rvb4vzda0dheld2q","5bf+rlwk0mvygdbhw/be03pmn17oakmr6iknsfcowbyninavclqoe8yvqqaraqab","6vlp1svwtny/y8tychsbcdaupvmn4syf6qop1svmn299+22zvubp20szsnw233sj","8kmulcgs0hrf7qlwus6zs9q0asu/kkduqj9gruwwfxk4w5moqzohk0jcjazaabi","9erhwmb1utxjfdhkkntds2cvns5jzjpjit4bt8icd9cetsp3d7wrnt/xmveejxjb","ak2cmlalz9cixllfhjqvahf68ucx2ptxzg3mowhdfqws09zkspwlcldiawbw//mm","b4nxmnezuz55qkyqahopkuimzf0tn5boih1dog55wu/zye7dqjve9l6te6ktxali","begin","below","block","c9eex4v5b/tkkumyrg593a/oddsrpwaigbnjdzbfqh7wlyesaevrkfjmbzmgfob","cgtcwgouoe68a/bb9p4fowonnm7tqjm5ef30qnbwe8dmy5dvthffeqq70lnnc9sj","comment","commun","consid","contact","cxu5fg1vvbhhbpgws39uiwzibswvfzj2ihopcjd9sczw5xvclcvb1ksu9ud+d88m","drvxj/mhd14rhdc2qtercf69gzz79gflctmcxxblqmdsy0vwbj56gi/igimz9jpt","dsctx/jbh+44x9vtk3g+2sdfdc6tqrbw/lelc8p7abebaagjaiuegaekaa8falap","edacgwmfcqegh4afcwkibwmffqojcasffgidaqachgecf4aacgkqv4xalixiroqu","edacgwwfcqegh4aacgkqv4xalixirorw8raag4l9/s8eg90qhslfpjwzvmyi7rvv","encrypt","end","entryp","eygzhyz2i4waaltjhxipwfysz/4zk9q9h8g0xv/pk9y4oflpgr7t3vctmwvmhgzk","gpgtool","gwl4srmedqxmbmw+8cygiimmurjty+c9zath88nfmydng312iio9cse3lnyl7eo","https://gpgtools.org","ieagnnzbiudoa6au+posb2xzq+rkecu/3avmtyz3wcejt3fc4gf9jy2a16ypmarm","iixcke3ucyhbf7xjdkgpktsgzfkodxfz3xatjeew80geg05gvmod9yvf96q7lvc6","iremjk4syfvujjgi9e/bt0mh2+obcjejwd/+w5vhkb5seva+hw9fyq569y2+kmwg","izl0wxsdrmqtdvsz70m6veojosa15ylryzrwn9u7qbpe2mmuygi90tvgqk4nlzg","kbd3ynvcl096yqd4b/31ffy74/hagefnh7jwlvay4mordtff4kberj7u39ue/jg","key","kugeixfz5cr+smngf0l0hbrkflnilv7wd1wjjmqnvtabfjfo+tovawuhqh19dlkb","mqinbfapedabeadabh3mk58ubkkwndztfkchttrzu2xfwwrhtdyanv7eoo06wrxu","ojkxz/91yjp3jeezzulqlioz4rk38ubi96u5nekqrmwce6satpchsa0dpj6lyz1i","opjf6njxv9ktjjla3imab5astfwx1mbtkqtwnlqau4pvfcmd6/z+krftzgp9nbci","oraaoznv6lvadixjjgh7bfh0odnea7qac+inxkqd62camn3vaef0plwuhcz80twi","otzeekx3+b+fjmua4eyjg5cvbn0wv2ibejti744b3hwxw9yoidrstrmd8iixfja","perpd1guxxeogcw","pgp","pleas","public","secur","sss8smljt9aar8u3ozntfncqtfsno8fubyhxmmgskrc7oev+t6lj3rdjxgdafca","swslu05vsdosmcr01niyoa9beqjm9smgd/1b+8qzeaifvad+sabiridacopn3xsh","szzlzikpukbep+5hzxt7x22w9m+d6w0oo22hs8zfv1zavua5ag0evo94maeqanoc","tcfwawn0b3jpysbsyxltb25kidxsb3zlqhyycmf5lmnvbt6jaj0eewekaccfalap","tcxmswrt4h451qsgscg9eikiv2is/golhlnkavehicrgsfecrsb2rnkgwsq/yjit","team","tlwqgv2t372ucpnalh6js8y/0kkpaevfk6pguzmp6frlx1j05mt+yrup2uadeqgt","to5t","tzpoz8tdenjami78zr5qcw1vmgybxlzhehqnpg3u4qwruzsy5toyixkhqcnc3ryh","u83vl8mhnjug60kvbk7a9gryavfioqrvbtdpf41g+tjpykrhsjxpgglxhnzvbfid","us","uwbp3tumxf0f53uo7flka1a7myaehfcorysarioqtpxtz1z7oybplrqlbwmln/yv","v2ray","va8xiinq0hi5phz9kly76ksuqysz1dre924/1bwlms1vzeayb81toctyd3i7i0af","wvspmwilg85wdg/tzm8ps8umwt6d9rhpkwnlzwyrfyjbpxn6vopg0ohsgzpj2+im","wwjibrtyaccglzlz/a1scst1dcidwqoqqh7duk2yvmxg3idaofokae/uw31azt0b","x7r92mxq+gczgepwg4goe/xaqhzh84vzdwzj4cehpgha/z/enqbqbiqawtxld4wt","ycd4wtqap58szpxhhgzejeicpspe1ppyrow+dl8ll+ppmbcl9zav++bjknel5xzn","you'd"],"chapter_00/faq.html":["v2ray"],"chapter_01/":["v2ray"],"chapter_01/workflow.html":["5","a、b","b","http","server","sock","utc","v2ray","vmess","vp"],"chapter_01/install.html":["10.7","12.04+,cento","127.0.0.1:1080","2.6.23","32","6","64","7","apt","bash","core/master/release/instal","curl","daemon","debian","etc/v2ray/config.json","f","forc","http://127.0.0.1:3128","https://raw.githubusercontent.com/v2ray/v2ray","instal","l","linux","linux:kernel","lion","local","lt;(curl","mac","os","p","path/to/v2ray.zip","proxi","releas","release.sh","reload","s","servic","sock","socks5://127.0.0.1:1080","start","start|stop|status|reload|restart|forc","su","sudo","systemd","ubuntu","unzip","usr/bin/v2ray/v2ray:v2ray","v1.13","v2ray","v2ray,instal","version","vista","window","x","yum"],"chapter_01/client.html":["127.0.0.1:1080","b","config.json","curl","gt","hostnam","https://www.google.com","json","linux","mac","open","os","socks5","terminal.app","v","v2ray","v2ray.ex","vp","window","x","zip"],"chapter_01/server.html":["config.json","config=/etc/v2ray/config.json","etc/v2ray","linux","mac","os","systemd","systemv","usr/bin/v2ray","usr/bin/v2ray/v2ray","v2ray","vp","vpoint_socks_vmess.json","vpoint_vmess_freedom.json","window","x","zip"],"chapter_01/flags.html":["config","config.json","config=config.json","test","v2ray","version"],"chapter_01/errors.html":["0","address","alterid","authent","byte","close","connect","eof","exist","fail","forcibl","host","id","invalid","read","remot","respons","shadowsock","type","unknown","vmess","vmessout","wsarecv","xxx"],"chapter_01/issue.html":["10,ubuntu","132","138","14.04","32","64","7","bug","chat","duplic","enhanc","fix","functionality),稳定性(reliability)或者性能(perform","github","gitter","golang","help","invalid","issu","journal","journalctl","panic","pull","request","systemd","telegram","u","v2ray","want","window","won't"],"chapter_01/hardware.html":["10g","10m","128mb","20g","64","64mb","arm","armv6","cpu","golang","openvz","v2ray","virt","x86"],"chapter_02/":[],"chapter_02/00_json.html":["42","javascript","json","key","notat","object","pair),一个键是一个字符串(str","quot;a"","quot;another"","quot;array"","quot;arrayvalue"","quot;boolvalue"","quot;is"","quot;numbervalue"","quot;object"","quot;objectvalue"","quot;string"","quot;stringvalue"","quot;thi","quot;this"","string."","string)、数字(number)、布尔(bool)、数组(array)和对象(object","true","v2ray","valu"],"chapter_02/01_overview.html":["0.0.0.0","1","1.13","1.5","10","10"","1080","2","3","5","6","access","alloc","alway","c:\\temp\\v2ray_access.log(window","c:\\temp\\v2ray_error.log(window","concurr","connectionreus","debug","debug、info、warning、error","detour","dn","error","inbound","inbounddetour","ip","linux","listen","log","loglevel","none","outbound","outbounddetour","port","protocol","quot;0.0.0.0"","quot;0.0.0.0/8"","quot;127.0.0.1"","quot;5","quot;access"","quot;allocate"","quot;always"","quot;baidu.com"","quot;blocked"","quot;concurrency"","quot;connectionreuse"","quot;direct"","quot;dns"","quot;domain"","quot;error"","quot;field"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;listen"","quot;log"","quot;loglevel"","quot;network"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;qq.com"","quot;refresh"","quot;routing"","quot;rules"","quot;sendthrough"","quot;settings"","quot;strategy"","quot;tag"","quot;transport"","quot;type"","quot;udp"","quot;warning"","quot;协议名称"","quot;文件地址"","quot;标识"","quot;端口"","random","refresh","rout","sendthrough","set","strategi","tag","tcp","tmp/v2ray_access.log","tmp/v2ray_error.log","transport","true","v2ray","vmess","warn"],"chapter_02/02_protocols.html":["blackhol","dokodemo","door","freedom","http","shadowsock","sock","v2ray","vmess"],"chapter_02/protocols/blackhole.html":["1.16","403","blackhol","blackhole(黑洞)是一个传出数据协议,它会阻碍所有数据的传出,配合路由(rout","http","outbound","quot;http"","quot;none"","quot;response"","quot;type"","respons","type","v2ray"],"chapter_02/protocols/dokodemo.html":["0","1.16","53","address","dokodemo","door","fals","followredirect","inbound","iptabl","ipv4、ipv6","linux","network","port","quot;8.8.8.8"","quot;address"","quot;followredirect"","quot;network"","quot;port"","quot;tcp"","quot;timeout"","tcp/ipv4","tcp”或“udp","timeout","true","v2ray"],"chapter_02/protocols/freedom.html":["0","1.15","asi","dn","domainstrategi","freedom","ip","outbound","quot;asis"","quot;domainstrategy"","quot;timeout"","tcp","timeout","udp","useip","v2ray"],"chapter_02/protocols/http.html":["1.x","http","inbound"],"chapter_02/protocols/shadowsocks.html":["0","1","128","16","256","ae","cfb","chacha20","fals","ietf","inbound","level","method","ota","password","quot;level"","quot;method"","quot;password"","quot;udp"","quot;加密方式"","quot;密码"","shadowsock","tcp","true","udp","vmess","vp"],"chapter_02/protocols/socks.html":["0","127.0.0.1","4","4a","5","acount","auth","fals","inbound","ip","password"","quot;127.0.0.1"","quot;accounts"","quot;auth"","quot;ip"","quot;mi","quot;noauth"","quot;noauth"匿名方式和"password"用户密码方式。默认值为"noauth"","quot;pass"","quot;password"","quot;timeout"","quot;udp"","quot;user"","quot;user"指定,密码由"pass"","sock","timeout","true","udp","username"","v2ray"],"chapter_02/protocols/vmess.html":["0","098a63964b6b"","1.9","10","100","32","37192","4138","65535","7e62","9fd3","address","alterid","client","clients:一组服务器认可的用户。client","default","detour","email","id","id:vmess","inbound","ip","level","outbound","outbounddetour","port","quot;127.0.0.1"","quot;27848739","quot;address"","quot;alterid"","quot;clients"","quot;default"","quot;detour"","quot;email"","quot;id"","quot;level"","quot;[email protected]"","quot;port"","quot;tag_to_detour"","quot;to"","quot;users"","quot;vnext"","tag","user","v2ray","vmess","vnext"],"chapter_02/03_routing.html":["1.13","100"","65536","b","b"","chinadn","chinaip","chinasit","chinasites;outboundtag","cidr","domain","domainstrategi","field","field、chinaip","ip","ipv4","ip(a","network","outboundtag。typ","port","quot;0","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;a","quot;asis"","quot;baidu.com"","quot;blocked"","quot;chinaip"","quot;chinasites"","quot;direct"","quot;domain"","quot;domainstrategy"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;ip"","quot;ipifnonmatch"","quot;network"","quot;outboundtag"","quot;port"","quot;qq.com"","quot;regexp:",余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如"regexp:\\\\.goo.*\\\\.com$"匹配"www.google.com"、"fonts.googleapis.com",但不匹配"google.com"","quot;rules"","quot;sina.com"可以匹配"sina.com"、"sina.com.cn"和"www.sina.com",但不匹配"sina.cn"","quot;tcp"","quot;tcp"、"udp"或"tcp,udp"","quot;type"","quot;udp"","rule","strategi","tcp/udp","type","v2ray","vp"],"chapter_02/04_dns.html":["1.14","53","dn","domainstrategi","host","ip","ipv4","ipv6","quot;127.0.0.1"","quot;8.8.4.4"","quot;8.8.8.8"","quot;baidu.com"","quot;hosts"","quot;localhost"","quot;servers"","quot;域名":"ip",ip","server","v2ray"],"chapter_03/":["v2ray"],"chapter_03/00_dynport.html":["1","10","2","20000"","32","42ca","5","6a35282d737f"","b7e9","client","efa5","email","inbounddetour","port","port)接收请求,但可以配置一个绕路(detour","quot;10000","quot;allocate"","quot;alterid"","quot;clients"","quot;concurrency"","quot;d17a1af7","quot;default"","quot;detour"","quot;email"","quot;features"","quot;id"","quot;inbound"","quot;level"","quot;[email protected]"","quot;port"","quot;protocol"","quot;random"","quot;refresh"","quot;settings"","quot;strategy"","quot;tag"","quot;to"","quot;vmess"","v2ray","vp","x","y"],"chapter_03/01_effective.html":["028a0fe86e22"","0,vmess","1","10","100","1000","100mb/s,那么下行连接中,vp","10mb,使用过程中内存没有限制,最高可能把机器的可用内存吃完,然后由于内存不足而崩溃。一般而言,客户端的内存使用相对稳定(30mb","1100","128","150m","16","2","30","441f","4d28","4mb/","5","50m","60","72a3","80mb","8m","9f28","ae","aeee","affc9fb6c572"","alterid","cfb","defens","depth","e80a","effect","email","gt","http","id","id,并用于通讯。alterid","inbounddetour","inbound)接收用户数据,分析之后交由一个传出协议(outbound)发出。v2ray","ip","outbounddetour","quot;3b129dec","quot;8f62a287","quot;alterid"","quot;clients"","quot;id"","quot;settings"","shadowsock","sock","socks、http、dn","tcp","udp","utc","v2ray","vmess","vp","vpn","youtub"],"chapter_04/":[],"chapter_04/00_roadmap.html":["2.3","36","bug","https://docs.google.com/spreadsheets/d/1cmnpzuu8z0cpoxuqczrduazgii3botnv63w4gcwobf8/pubhtml","mileston","milestone,i","releas","release;z","v2ray","x","x.y.z"],"chapter_04/01_guide.html":["70","_test.go","add","app","assertequ","blackhol","branch","bug","case","chapter_02/02_protocols.md","ci","clone,import","code","commit","common","connectionhandl","core","core/testing/assert","coverag","dokodemo","door","effect","flag","fork","freedom","git","github.com/v2ray/v2ray","github.com/your/v2ray","go","gofmt","golang","golang.org/x","hello","hello.go","html","https://github.com/you/cooltool.git","issu","json","master","merg","mit","mock","name;v2ray","packag","pascal","path","path),go","point","pr","privateattribut","proxi","pull","push","receiv","releas","remot","request","router","shell","sock","tag","test","this、self","transport","travi","unit","v2ray","vmess","w","workspac","world/hello_again.go"],"chapter_04/02_design.html":["core","dispatch","dispatchtooutbound","dn","handler","inbound","manag","packet","proxi","proxy.inboundconnectionhandl","proxy.outboundconnectionhandl","proxy)和传出代理(outbound","router","shell","v2ray"],"chapter_04/03_vmess.html":["0x01","0x01:ipv4","0x01:tcp","0x02","0x02:udp","0x03","0x03:ipv6","1","128","16","2","30","39;c48619fe","4","431b","49e0","75b4","8","8f02","adb2","ae","alterid","b9e9","big","byte","cfb","cmd","de305d54","eb6b9e546014","edf763e17e21'","endian","f","fnv1a","h","hash","hmac(h","id","ipv4","ipv6","iv","iv),key","iv:md5(x","k","key","key:md5","l","l:big","m","md5","n","opt","port","port:big","t","tcp","token","udp","utc","uuid","v","v2ray","ver","vmess","x","x),x"],"chapter_04/04_compile.html":["1.5","32位:curl","386.tar.gz","64位:curl","amd64.tar.gz","apt","arch","bash","c","core","core/master/release/install.sh","core/tools/build","debian","export","git","github.com/v2ray/v2ray","go","go_latest.tar.gz","golang","golang:sudo","gopath","gopath/bin/build","gopath/bin/v2ray","gopath=$home/work","https://raw.githubusercontent.com/v2ray/v2ray","https://storage.googleapis.com/golang/go1.5.2.linux","instal","linux","lt;(curl","o","pacman","path=$path:/usr/local/go/bin","root","s","sudo","tar","u","ubuntu","usr/loc","v2ray","v2ray:$gopath/bin/build","xxx","xzf","y"],"chapter_05/":["v2ray"],"chapter_05/00_config/":["json","quot;//"","v2ray"],"chapter_05/00_config/00_socks_client.html":["1080","17173","42ca","5","6a35282d737f"","b7e9","efa5","fals","freedom","id","ip","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;8.8.8.8"","quot;::1/128"","quot;address"","quot;auth"","quot;d17a1af7","quot;direct"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;id"","quot;inbound"","quot;ip"","quot;noauth"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;routing"","quot;rules"","quot;settings"","quot;socks"","quot;strategy"","quot;tag"","quot;type"","quot;udp"","quot;users"","quot;vmess"","quot;vnext"","sock","udp"],"chapter_05/00_config/01_multi_server.html":["10101","1080","19ec","20202","30303","4399","4a70","4e81","81ee","8af2","904d","b1b6","bf9d4d209f64"","e42f3126c96a"","e77b","f2f0c9a32ac3"","fals","id","ip","quot;1.1.1.1"","quot;2.2.2.2"","quot;3.3.3.3"","quot;77fdfd6f","quot;ad939547","quot;address"","quot;auth"","quot;e1d6c5b1","quot;id"","quot;inbound"","quot;noauth"","quot;outbound"","quot;port"","quot;protocol"","quot;settings"","quot;socks"","quot;udp"","quot;users"","quot;vmess"","quot;vnext"","sock","v2ray"],"chapter_05/00_config/02_blacklist.html":["1080","17173","43c1","92ff","a077ca7222b4"","f2d4","fals","ip","quot;"","quot;.goo"","quot;127.0.0.1"","quot;195.154.64.131"","quot;access"","quot;address"","quot;auth"","quot;bit.ly"","quot;bitly.com"","quot;blocked"","quot;blogblog"","quot;blogger"","quot;blogspot"","quot;chinagfw.org"","quot;d0609d48","quot;domain"","quot;dropbox.com"","quot;facebook.com"","quot;fbcdn.net"","quot;field"","quot;flickr.com"","quot;freedom"","quot;ggpht"","quot;github"","quot;godoc.org"","quot;golang.org"","quot;gravatar.com"","quot;gstatic"","quot;gstatic.com"","quot;id"","quot;inbound"","quot;ip"","quot;j.mp"","quot;log"","quot;mediafire.com"","quot;noauth"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;routing"","quot;rules"","quot;settings"","quot;socks"","quot;strategy"","quot;t.co"","quot;tag"","quot;twimg.com"","quot;twitpic.com"","quot;twitter.com"","quot;type"","quot;udn.com"","quot;udp"","quot;users"","quot;vmess"","quot;vnext"","quot;wikipedia.com"","quot;wikipedia.org"","quot;youtu.be"","quot;youtube.com"","quot;ytimg.com"","vmess","www.google.com,www.googleapis.com"],"chapter_05/00_config/03_port_map.html":["0","098a63964b6b"","1080","28394","3389","37192","4138","7e62","9fd3","desktop","dokodemo","door","door"","fals","ip","quot;1.2.3.4"","quot;127.0.0.1"","quot;27848739","quot;address"","quot;auth"","quot;dokodemo","quot;id"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;network"","quot;noauth"","quot;outbound"","quot;port"","quot;protocol"","quot;settings"","quot;socks"","quot;tcp"","quot;tcp"、"udp"和"tcp,udp"","quot;timeout"","quot;udp"","quot;users"","quot;vmess"","quot;vnext"","remot","sock","v2ray"],"chapter_05/00_config/04_vmess_server.html":["0","028a0fe86e22"","1","10","30001","30010","30010"","37192","4d28","72a3","aeee","chapter_02/02_protocols.md","debug","error","id","info","quot;/var/log/v2ray/access.log"","quot;/var/log/v2ray/error.log"","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;30001","quot;3b129dec","quot;::1/128"","quot;access"","quot;blackhole"","quot;blocked"","quot;clients"","quot;error"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;id"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;level"","quot;log"","quot;loglevel"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;routing"","quot;rules"","quot;settings"","quot;strategy"","quot;tag"","quot;type"","quot;vmess"","quot;warning"","vmess","vp","warn"],"chapter_05/00_config/05_dyn_port.html":["028a0fe86e22"","1","100","2","30001","300100","30100"","37192","4d28","5","72a3","aeee","client","inbounddetour","quot;/var/log/v2ray/access.log"","quot;/var/log/v2ray/error.log"","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;30001","quot;3b129dec","quot;::1/128"","quot;access"","quot;allocate"","quot;alterid"","quot;blackhole"","quot;blocked"","quot;clients"","quot;concurrency"","quot;detour"","quot;error"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;id"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;level"","quot;log"","quot;loglevel"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;random"","quot;refresh"","quot;routing"","quot;rules"","quot;settings"","quot;strategy"","quot;tag"","quot;to"","quot;type"","quot;vmess"","quot;warning"","v2ray"],"chapter_05/00_config/06_shadowsocks.html":["0","028a0fe86e22"","1","128","2"","256","30001","30002","37192","4d28","72a3","ae","aeee","cfb","cfb"","debug","error","fals","id","info","quot;/var/log/v2ray/access.log"","quot;/var/log/v2ray/error.log"","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;3b129dec","quot;::1/128"","quot;a","quot;access"","quot;blackhole"","quot;blocked"","quot;clients"","quot;error"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;id"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;level"","quot;log"","quot;loglevel"","quot;method"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;password"","quot;port"","quot;protocol"","quot;routing"","quot;rules"","quot;settings"","quot;shadowsocks"","quot;strategy"","quot;tag"","quot;type"","quot;udp"","quot;v2ray","quot;v2ray"","quot;vmess"","quot;warning"","shadowsock","udp","v2ray","vmess","vp","warn"],"chapter_05/00_config/07_vps_relay.html":["028a0fe86e22"","1","17173","37192","42ca","4d28","6a35282d737f"","72a3","aeee","b7e9","efa5","id","ip","quot;/var/log/v2ray/access.log"","quot;/var/log/v2ray/error.log"","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;3b129dec","quot;8.8.8.8"","quot;::1/128"","quot;access"","quot;address"","quot;baidu.com"","quot;blackhole"","quot;blocked"","quot;chinaip"","quot;clients"","quot;d17a1af7","quot;direct"","quot;domain"","quot;error"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;id"","quot;inbound"","quot;ip"","quot;level"","quot;log"","quot;loglevel"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;qq.com"","quot;routing"","quot;rules"","quot;settings"","quot;strategy"","quot;tag"","quot;type"","quot;users"","quot;vmess"","quot;vnext"","quot;warning"","vp"],"chapter_05/00_config/08_static_hosts.html":["1.14","1080","dn","fals","freedom","google.com","host","ip","ip,v2ray","quot;0.0.0.0/8"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;127.0.0.0/8"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;203.0.113.0/24"","quot;220.255.2.153"","quot;8.8.4.4"","quot;8.8.8.8"","quot;::1/128"","quot;auth"","quot;direct"","quot;dns"","quot;dns.google.com"","quot;domain"","quot;domainstrategy"","quot;fc00::/7"","quot;fe80::/10"","quot;field"","quot;freedom"","quot;google.com"","quot;hosts"","quot;inbound"","quot;ip"","quot;noauth"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;port"","quot;protocol"","quot;routing"","quot;rules"","quot;servers"","quot;settings"","quot;socks"","quot;strategy"","quot;tag"","quot;type"","quot;udp"","quot;useip"","quot;vmess"","quot;vnext"","quot;www.google.com"","v2ray"],"chapter_05/00_config/09_ad_blocker.html":["403","http","quot;17un.co"","quot;adblock"","quot;blackhole"","quot;domain"","quot;field"","quot;http"","quot;msg.71.am"","quot;outbounddetour"","quot;outboundtag"","quot;protocol"","quot;response"","quot;routing"","quot;rules"","quot;settings"","quot;strategy"","quot;tag"","quot;type"","v2ray"],"chapter_05/01_exp.html":["2015.12.12","2016.01.08","2016.01.20","2016.01.26","2016.02.01","2016.02.05","2016.02.24","2016.04.15","client","debian","server","shadowsock","ubuntu环境下v2ray","v2ray","v2ray环境搭建,支持v2ray协议和shadowsock","vp","window"],"chapter_00/versions.html":["1.6","2016.02.08","2016.02.22","2016.02.29","2016.03.07","2016.04.18","2016.05.01","2016.05.16","2016.05.29","2016.06.05","2016.06.12","accept","account","add","address","ae","allow","argument","authent","automat","back","better","blackhol","bug","chacha20","chang","chinaip","chinasit","combin","compil","complet","configur","connect","creat","data","default","direct","dn","dokodemo","door","download","dynam","enabl","encrypt","exhaust","file","fix","forbidden","functionali","go","happi","histori","http","improv","instal","intern","ip","iptabl","issu","latest","listen","loglevel","memori","minor","more","netcooki","new","now","offici","on","option","ota","packag","panic","perform","pleas","port","process","provid","proxi","quot;none"","re","recogn","redirect","refresh","relay","release.sh","result","reus","rout","script","second","secur","send","server","shadowsock","site","specif","specifi","static","stop","support","tcp","thank","through","time","tri","udp","updat","us","usag","v1.10","v1.11","v1.12","v1.12.1","v1.13","v1.14","v1.15","v1.16","v1.7","v1.8","v1.9","v1.9.1","v2ray","version","vmess","year"]},"length":51},"tokenStore":{"root":{"0":{"2":{"8":{"docs":{},"a":{"0":{"docs":{},"f":{"docs":{},"e":{"8":{"6":{"docs":{},"e":{"2":{"2":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}}},"docs":{}}},"docs":{}},"9":{"8":{"docs":{},"a":{"6":{"3":{"9":{"6":{"4":{"docs":{},"b":{"6":{"docs":{},"b":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.05555555555555555},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.14285714285714285},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.038461538461538464},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.06521739130434782},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.06097560975609756},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.038461538461538464},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}},"docs":{}}},"docs":{}}},"9":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"p":{"docs":{},"v":{"docs":{},"o":{"docs":{},"/":{"docs":{},"d":{"docs":{},"x":{"6":{"docs":{},"t":{"docs":{},"q":{"docs":{},"s":{"8":{"docs":{},"i":{"docs":{},"v":{"docs":{},"/":{"docs":{},"a":{"docs":{},"r":{"docs":{},"d":{"docs":{},"p":{"docs":{},"b":{"docs":{},"p":{"docs":{},"a":{"docs":{},"z":{"docs":{},"u":{"docs":{},"l":{"docs":{},"o":{"docs":{},"s":{"docs":{},"t":{"docs":{},"w":{"docs":{},"x":{"docs":{},"k":{"docs":{},"r":{"docs":{},"r":{"docs":{},"i":{"2":{"docs":{},"+":{"docs":{},"j":{"docs":{},"q":{"docs":{},"m":{"docs":{},"e":{"docs":{},"o":{"docs":{},"k":{"docs":{},"e":{"docs":{},"p":{"docs":{},"l":{"docs":{},"s":{"docs":{},"d":{"docs":{},"y":{"docs":{},"p":{"docs":{},"r":{"docs":{},"m":{"docs":{},"v":{"9":{"docs":{},"b":{"docs":{},"c":{"docs":{},"g":{"docs":{},"y":{"docs":{},"m":{"docs":{},"d":{"docs":{},"a":{"8":{"docs":{},"n":{"6":{"docs":{},"w":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}},"docs":{}}}}}}},",":{"docs":{},"v":{"docs":{},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}},"x":{"0":{"1":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.03954802259887006}},":":{"docs":{},"i":{"docs":{},"p":{"docs":{},"v":{"4":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}}},"t":{"docs":{},"c":{"docs":{},"p":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}}},"2":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},":":{"docs":{},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}}},"3":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}},":":{"docs":{},"i":{"docs":{},"p":{"docs":{},"v":{"6":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}}}}},"docs":{}},"docs":{}}},"1":{"0":{"0":{"0":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288}}},"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}},"m":{"docs":{},"b":{"docs":{},"/":{"docs":{},"s":{"docs":{},",":{"docs":{},"那":{"docs":{},"么":{"docs":{},"下":{"docs":{},"行":{"docs":{},"连":{"docs":{},"接":{"docs":{},"中":{"docs":{},",":{"docs":{},"v":{"docs":{},"p":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}}}}}}}}}}}},"1":{"0":{"1":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{}},"8":{"0":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}},"docs":{}},"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0392156862745098},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.025423728813559324},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112}},".":{"7":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}},"docs":{}},",":{"docs":{},"u":{"docs":{},"b":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{},"u":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}}}}},"g":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}},"m":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.11764705882352941}},"b":{"docs":{},",":{"docs":{},"使":{"docs":{},"用":{"docs":{},"过":{"docs":{},"程":{"docs":{},"中":{"docs":{},"内":{"docs":{},"存":{"docs":{},"没":{"docs":{},"有":{"docs":{},"限":{"docs":{},"制":{"docs":{},",":{"docs":{},"最":{"docs":{},"高":{"docs":{},"可":{"docs":{},"能":{"docs":{},"把":{"docs":{},"机":{"docs":{},"器":{"docs":{},"的":{"docs":{},"可":{"docs":{},"用":{"docs":{},"内":{"docs":{},"存":{"docs":{},"吃":{"docs":{},"完":{"docs":{},",":{"docs":{},"然":{"docs":{},"后":{"docs":{},"由":{"docs":{},"于":{"docs":{},"内":{"docs":{},"存":{"docs":{},"不":{"docs":{},"足":{"docs":{},"而":{"docs":{},"崩":{"docs":{},"溃":{"docs":{},"。":{"docs":{},"一":{"docs":{},"般":{"docs":{},"而":{"docs":{},"言":{"docs":{},",":{"docs":{},"客":{"docs":{},"户":{"docs":{},"端":{"docs":{},"的":{"docs":{},"内":{"docs":{},"存":{"docs":{},"使":{"docs":{},"用":{"docs":{},"相":{"docs":{},"对":{"docs":{},"稳":{"docs":{},"定":{"docs":{},"(":{"3":{"0":{"docs":{},"m":{"docs":{},"b":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}},"docs":{}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}},"1":{"0":{"0":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}},"docs":{}},"docs":{}},"2":{"7":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"1":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}},":":{"1":{"0":{"8":{"0":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}},"8":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.038461538461538464},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}},"m":{"docs":{},"b":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}}}},"docs":{},".":{"0":{"4":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223}},"+":{"docs":{},",":{"docs":{},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"o":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}}}}}},"docs":{}},"docs":{}}},"3":{"2":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}},"8":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}},"docs":{}},"4":{"docs":{},".":{"0":{"4":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}},"docs":{}},"docs":{}}},"5":{"0":{"docs":{},"m":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}},"docs":{}},"6":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.04519774011299435}}},"7":{"1":{"7":{"3":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}},"docs":{}},"docs":{}},"8":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"9":{"docs":{},".":{"8":{"9":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}},"e":{"docs":{},"c":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}},"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.05},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.0847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.03333333333333333},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}},".":{"0":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856}}},"1":{"3":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}},"4":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}},"5":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616}}},"6":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776}}},"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"5":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}},"6":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"9":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}},"docs":{},"x":{"docs":{"chapter_02/protocols/http.html":{"ref":"chapter_02/protocols/http.html","tf":0.16666666666666666}}}},"w":{"docs":{},"y":{"docs":{},"b":{"docs":{},"c":{"docs":{},"x":{"6":{"1":{"docs":{},"y":{"docs":{},"y":{"docs":{},"y":{"docs":{},"c":{"docs":{},"r":{"docs":{},"b":{"docs":{},"q":{"docs":{},"v":{"9":{"1":{"docs":{},"n":{"docs":{},"n":{"docs":{},"f":{"docs":{},"z":{"docs":{},"f":{"docs":{},"d":{"docs":{},"e":{"docs":{},"m":{"docs":{},"c":{"8":{"docs":{},"d":{"docs":{},"o":{"docs":{},"q":{"docs":{},"s":{"docs":{},"x":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}},"docs":{}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}},"docs":{}},"docs":{}}}}}},"i":{"docs":{},"t":{"docs":{},"m":{"docs":{},"y":{"docs":{},"s":{"docs":{},"u":{"docs":{},"n":{"docs":{},"r":{"docs":{},"w":{"docs":{},"g":{"docs":{},"o":{"docs":{},"l":{"docs":{},"/":{"docs":{},"u":{"docs":{},"t":{"docs":{},"r":{"docs":{},"n":{"docs":{},"y":{"docs":{},"s":{"docs":{},"k":{"docs":{},"z":{"2":{"docs":{},"p":{"docs":{},"o":{"docs":{},"z":{"docs":{},"x":{"6":{"docs":{},"y":{"docs":{},"f":{"docs":{},"x":{"docs":{},"r":{"docs":{},"d":{"docs":{},"z":{"docs":{},"y":{"docs":{},"t":{"docs":{},"u":{"docs":{},"w":{"docs":{},"i":{"docs":{},"r":{"0":{"docs":{},"v":{"docs":{},"c":{"docs":{},"l":{"docs":{},"w":{"5":{"0":{"docs":{},"t":{"docs":{},"f":{"docs":{},"f":{"docs":{},"k":{"docs":{},"i":{"docs":{},"o":{"docs":{},"c":{"docs":{},"a":{"docs":{},"o":{"docs":{},"t":{"3":{"docs":{},"q":{"5":{"docs":{},"f":{"docs":{},"p":{"docs":{},"c":{"docs":{},"o":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}},"docs":{}}},"docs":{}}}}}}}}}}}},"docs":{}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}},"m":{"2":{"9":{"docs":{},"n":{"3":{"docs":{},"c":{"7":{"docs":{},"n":{"docs":{},"z":{"6":{"docs":{},"+":{"docs":{},"a":{"docs":{},"b":{"docs":{},"y":{"docs":{},"u":{"docs":{},"y":{"docs":{},"n":{"docs":{},"x":{"docs":{},"j":{"docs":{},"g":{"docs":{},"d":{"docs":{},"h":{"docs":{},"k":{"docs":{},"o":{"docs":{},"z":{"docs":{},"a":{"docs":{},"t":{"docs":{},"u":{"docs":{},"e":{"docs":{},"g":{"docs":{},"f":{"docs":{},"j":{"docs":{},"r":{"docs":{},"g":{"docs":{},"l":{"docs":{},"z":{"docs":{},"q":{"docs":{},"r":{"docs":{},"o":{"docs":{},"d":{"7":{"docs":{},"g":{"docs":{},"b":{"docs":{},"+":{"docs":{},"x":{"docs":{},"t":{"docs":{},"x":{"docs":{},"h":{"docs":{},"b":{"docs":{},"j":{"docs":{},"q":{"docs":{},"k":{"docs":{},"r":{"6":{"docs":{},"j":{"docs":{},"n":{"docs":{},"y":{"docs":{},"l":{"docs":{},"z":{"docs":{},"b":{"docs":{},"a":{"docs":{},"o":{"5":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}},"docs":{}}}}}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}}},"2":{"0":{"0":{"0":{"0":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}},"docs":{}},"docs":{}},"1":{"5":{"docs":{},".":{"0":{"9":{"docs":{},".":{"3":{"0":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}}},"docs":{}},"1":{"0":{"docs":{},".":{"0":{"2":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"1":{"7":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}}},"1":{"docs":{},".":{"1":{"1":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"3":{"0":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"docs":{}},"docs":{}}},"2":{"docs":{},".":{"0":{"7":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"docs":{}},"1":{"2":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.07692307692307693}}},"4":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"6":{"docs":{},".":{"0":{"1":{"docs":{},".":{"0":{"8":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.07692307692307693}}},"docs":{}},"1":{"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"8":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"docs":{}},"2":{"0":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"5":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"6":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"docs":{}},"docs":{}}},"2":{"docs":{},".":{"0":{"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"5":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"8":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"1":{"2":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"7":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"2":{"2":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"4":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"6":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"9":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}},"docs":{}},"docs":{}}},"3":{"docs":{},".":{"0":{"7":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"3":{"1":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}}},"4":{"docs":{},".":{"1":{"5":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}},"8":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"2":{"1":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}}},"5":{"docs":{},".":{"0":{"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}},"docs":{}},"1":{"6":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"2":{"9":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"docs":{}}},"6":{"docs":{},".":{"0":{"5":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"1":{"2":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{}},"2":{"0":{"2":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{}},"docs":{},"g":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}}},"5":{"6":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.038461538461538464},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.02631578947368421}}},"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.058823529411764705}}},"8":{"3":{"9":{"4":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}},"docs":{}},"docs":{}},"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.02824858757062147},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}},".":{"3":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}},"6":{"docs":{},".":{"2":{"3":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}},"docs":{}},"docs":{}}},"docs":{}},"x":{"docs":{},"h":{"2":{"docs":{},"y":{"docs":{},"v":{"docs":{},"t":{"docs":{},"b":{"docs":{},"n":{"docs":{},"t":{"docs":{},"l":{"9":{"docs":{},"z":{"docs":{},"i":{"docs":{},"f":{"docs":{},"d":{"docs":{},"p":{"docs":{},"w":{"docs":{},"q":{"8":{"docs":{},"d":{"7":{"docs":{},"+":{"docs":{},"e":{"docs":{},"m":{"docs":{},"g":{"docs":{},"c":{"docs":{},"s":{"docs":{},"t":{"docs":{},"k":{"docs":{},"y":{"docs":{},"q":{"docs":{},"c":{"docs":{},"d":{"docs":{},"y":{"6":{"docs":{},"i":{"docs":{},"z":{"docs":{},"d":{"docs":{},"d":{"3":{"docs":{},"c":{"docs":{},"o":{"docs":{},"e":{"docs":{},"b":{"2":{"docs":{},"s":{"docs":{},"t":{"docs":{},"m":{"docs":{},"u":{"docs":{},"g":{"3":{"1":{"docs":{},"h":{"docs":{},"j":{"docs":{},"s":{"3":{"docs":{},"e":{"docs":{},"f":{"docs":{},"t":{"docs":{},"m":{"docs":{},"s":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}},"docs":{}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}}}}}},"3":{"0":{"0":{"0":{"1":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}},"2":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}},"docs":{}},"1":{"0":{"0":{"docs":{"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}},"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112}}}}}}}},"docs":{}},"docs":{}},"1":{"0":{"0":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}},"docs":{}},"docs":{}},"3":{"0":{"3":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{}},"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"2":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}},"位":{"docs":{},":":{"docs":{},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{},"l":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}},"3":{"8":{"9":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}},"docs":{}},"6":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}},"7":{"1":{"9":{"2":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}},"docs":{}},"docs":{}},"8":{"6":{"docs":{},".":{"docs":{},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},".":{"docs":{},"g":{"docs":{},"z":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}},"docs":{}},"9":{"docs":{},";":{"docs":{},"c":{"4":{"8":{"6":{"1":{"9":{"docs":{},"f":{"docs":{},"e":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}}},"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}},"e":{"docs":{},"g":{"docs":{},"l":{"docs":{},"p":{"0":{"docs":{},"v":{"docs":{},"n":{"docs":{},"+":{"1":{"6":{"docs":{},"d":{"docs":{},"i":{"docs":{},"f":{"docs":{},"r":{"docs":{},"u":{"4":{"docs":{},"h":{"6":{"2":{"docs":{},"t":{"docs":{},"q":{"docs":{},"m":{"docs":{},"s":{"docs":{},"/":{"docs":{},"x":{"docs":{},"s":{"docs":{},"v":{"docs":{},"x":{"docs":{},"i":{"docs":{},"b":{"9":{"0":{"docs":{},"c":{"4":{"docs":{},"c":{"1":{"docs":{},"t":{"docs":{},"q":{"4":{"docs":{},"f":{"docs":{},"n":{"docs":{},"d":{"docs":{},"v":{"docs":{},"s":{"docs":{},"z":{"docs":{},"v":{"8":{"9":{"6":{"docs":{},"/":{"docs":{},"i":{"docs":{},"p":{"docs":{},"l":{"docs":{},"l":{"docs":{},"k":{"docs":{},"z":{"docs":{},"d":{"docs":{},"r":{"docs":{},"t":{"docs":{},"g":{"docs":{},"n":{"8":{"5":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}},"docs":{}},"docs":{}}}}}}}}}}}}}},"docs":{}},"docs":{}},"docs":{}}}}}}}}},"docs":{}}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}}}}}}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}}}}},"r":{"docs":{},"t":{"9":{"docs":{},"e":{"docs":{},"g":{"docs":{},"q":{"docs":{},"t":{"docs":{},"j":{"docs":{},"k":{"docs":{},"l":{"docs":{},"l":{"docs":{},"e":{"8":{"docs":{},"e":{"5":{"7":{"docs":{},"r":{"docs":{},"q":{"docs":{},"n":{"docs":{},"d":{"3":{"docs":{},"e":{"8":{"docs":{},"g":{"docs":{},"p":{"docs":{},"m":{"6":{"docs":{},"l":{"docs":{},"w":{"docs":{},"x":{"8":{"docs":{},"u":{"docs":{},"y":{"docs":{},"x":{"docs":{},"o":{"1":{"docs":{},"a":{"docs":{},"s":{"docs":{},"f":{"docs":{},"x":{"docs":{},"a":{"docs":{},"y":{"docs":{},"j":{"docs":{},"j":{"docs":{},"v":{"docs":{},"f":{"docs":{},"+":{"docs":{},"r":{"docs":{},"v":{"docs":{},"b":{"4":{"docs":{},"v":{"docs":{},"z":{"docs":{},"d":{"docs":{},"a":{"0":{"docs":{},"d":{"docs":{},"h":{"docs":{},"e":{"docs":{},"l":{"docs":{},"d":{"2":{"docs":{},"q":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}},"docs":{}}}}}},"docs":{}}}}},"docs":{}}}}},"docs":{}}},"docs":{}}}}}},"docs":{}},"docs":{}}},"docs":{}}}}}}}}}}},"docs":{}}}},"4":{"0":{"3":{"docs":{"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}},"docs":{}},"1":{"3":{"8":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}},"6":{"6":{"docs":{},".":{"1":{"0":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"2":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}},"c":{"docs":{},"a":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}},"3":{"1":{"docs":{},"b":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}},"9":{"9":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{},"c":{"1":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}},"docs":{}}},"4":{"1":{"docs":{},"f":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}},"docs":{}},"9":{"docs":{},"e":{"0":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}},"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},"a":{"7":{"0":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}},"d":{"2":{"8":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}},"docs":{}},"m":{"docs":{},"b":{"docs":{},"/":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}},"e":{"8":{"1":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{}}},"5":{"0":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}},"m":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}},"3":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304}}},"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.029411764705882353},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}},"b":{"docs":{},"f":{"docs":{},"+":{"docs":{},"r":{"docs":{},"l":{"docs":{},"w":{"docs":{},"k":{"0":{"docs":{},"m":{"docs":{},"v":{"docs":{},"y":{"docs":{},"g":{"docs":{},"d":{"docs":{},"b":{"docs":{},"h":{"docs":{},"w":{"docs":{},"/":{"docs":{},"b":{"docs":{},"e":{"0":{"3":{"docs":{},"p":{"docs":{},"m":{"docs":{},"n":{"1":{"7":{"docs":{},"o":{"docs":{},"a":{"docs":{},"k":{"docs":{},"m":{"docs":{},"r":{"6":{"docs":{},"i":{"docs":{},"k":{"docs":{},"n":{"docs":{},"s":{"docs":{},"f":{"docs":{},"c":{"docs":{},"o":{"docs":{},"w":{"docs":{},"b":{"docs":{},"y":{"docs":{},"n":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},"v":{"docs":{},"c":{"docs":{},"l":{"docs":{},"q":{"docs":{},"o":{"docs":{},"e":{"8":{"docs":{},"y":{"docs":{},"v":{"docs":{},"q":{"docs":{},"q":{"docs":{},"a":{"docs":{},"r":{"docs":{},"a":{"docs":{},"q":{"docs":{},"a":{"docs":{},"b":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}}}}}}}},"docs":{}}}}}}}}},"6":{"0":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}},"4":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}},"m":{"docs":{},"b":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}}},"位":{"docs":{},":":{"docs":{},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{},"l":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}},"5":{"5":{"3":{"5":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}},"6":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955}}},"docs":{}},"docs":{}},"docs":{}},"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}},"v":{"docs":{},"l":{"docs":{},"p":{"1":{"docs":{},"s":{"docs":{},"v":{"docs":{},"w":{"docs":{},"t":{"docs":{},"n":{"docs":{},"y":{"docs":{},"/":{"docs":{},"y":{"8":{"docs":{},"t":{"docs":{},"y":{"docs":{},"c":{"docs":{},"h":{"docs":{},"s":{"docs":{},"b":{"docs":{},"c":{"docs":{},"d":{"docs":{},"a":{"docs":{},"u":{"docs":{},"p":{"docs":{},"v":{"docs":{},"m":{"docs":{},"n":{"4":{"docs":{},"s":{"docs":{},"y":{"docs":{},"f":{"6":{"docs":{},"q":{"docs":{},"o":{"docs":{},"p":{"1":{"docs":{},"s":{"docs":{},"v":{"docs":{},"m":{"docs":{},"n":{"2":{"9":{"9":{"docs":{},"+":{"2":{"2":{"docs":{},"z":{"docs":{},"v":{"docs":{},"u":{"docs":{},"b":{"docs":{},"p":{"2":{"0":{"docs":{},"s":{"docs":{},"z":{"docs":{},"s":{"docs":{},"n":{"docs":{},"w":{"2":{"3":{"3":{"docs":{},"s":{"docs":{},"j":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}},"docs":{}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}}},"docs":{}}}}},"docs":{}}}}},"docs":{}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}},"docs":{}}}},"a":{"3":{"5":{"2":{"8":{"2":{"docs":{},"d":{"7":{"3":{"7":{"docs":{},"f":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"7":{"0":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}},"2":{"docs":{},"a":{"3":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}}},"5":{"docs":{},"b":{"4":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}},"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}},"、":{"docs":{},"a":{"docs":{},"r":{"docs":{},"c":{"docs":{},"h":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223}}}}}}},"e":{"6":{"2":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}},"docs":{}}},"8":{"0":{"docs":{},"m":{"docs":{},"b":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}},"1":{"docs":{},"e":{"docs":{},"e":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}},"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}},"、":{"docs":{},"u":{"docs":{},"b":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{},"u":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223}}}}}}}}},"k":{"docs":{},"m":{"docs":{},"u":{"docs":{},"l":{"docs":{},"c":{"docs":{},"g":{"docs":{},"s":{"0":{"docs":{},"h":{"docs":{},"r":{"docs":{},"f":{"7":{"docs":{},"q":{"docs":{},"l":{"docs":{},"w":{"docs":{},"u":{"docs":{},"s":{"6":{"docs":{},"z":{"docs":{},"s":{"9":{"docs":{},"q":{"0":{"docs":{},"a":{"docs":{},"s":{"docs":{},"u":{"docs":{},"/":{"docs":{},"k":{"docs":{},"k":{"docs":{},"d":{"docs":{},"u":{"docs":{},"q":{"docs":{},"j":{"9":{"docs":{},"g":{"docs":{},"r":{"docs":{},"u":{"docs":{},"w":{"docs":{},"w":{"docs":{},"f":{"docs":{},"x":{"docs":{},"k":{"4":{"docs":{},"w":{"5":{"docs":{},"m":{"docs":{},"o":{"docs":{},"q":{"docs":{},"z":{"docs":{},"o":{"docs":{},"h":{"docs":{},"k":{"0":{"docs":{},"j":{"docs":{},"c":{"docs":{},"j":{"docs":{},"a":{"docs":{},"z":{"docs":{},"a":{"docs":{},"a":{"docs":{},"b":{"docs":{},"i":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}}},"docs":{}}}}}}}}}}}},"docs":{}}},"docs":{}}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}}}}}}}},"m":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}},"f":{"0":{"2":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}},"docs":{}},"a":{"docs":{},"f":{"2":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}}}},"9":{"0":{"4":{"docs":{},"d":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}},"docs":{}},"2":{"docs":{},"f":{"docs":{},"f":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}},"docs":{},".":{"9":{"7":{"2":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}},"docs":{}},"docs":{}},"docs":{}},"e":{"docs":{},"r":{"docs":{},"h":{"docs":{},"w":{"docs":{},"m":{"docs":{},"b":{"1":{"docs":{},"u":{"docs":{},"t":{"docs":{},"x":{"docs":{},"j":{"docs":{},"f":{"docs":{},"d":{"docs":{},"h":{"docs":{},"k":{"docs":{},"k":{"docs":{},"n":{"docs":{},"t":{"docs":{},"d":{"docs":{},"s":{"2":{"docs":{},"c":{"docs":{},"v":{"docs":{},"n":{"docs":{},"s":{"5":{"docs":{},"j":{"docs":{},"z":{"docs":{},"j":{"docs":{},"p":{"docs":{},"j":{"docs":{},"i":{"docs":{},"t":{"4":{"docs":{},"b":{"docs":{},"t":{"8":{"docs":{},"i":{"docs":{},"c":{"docs":{},"d":{"9":{"docs":{},"c":{"docs":{},"e":{"docs":{},"t":{"docs":{},"s":{"docs":{},"p":{"3":{"docs":{},"d":{"7":{"docs":{},"w":{"docs":{},"r":{"docs":{},"n":{"docs":{},"t":{"docs":{},"/":{"docs":{},"x":{"docs":{},"m":{"docs":{},"v":{"docs":{},"e":{"docs":{},"e":{"docs":{},"j":{"docs":{},"x":{"docs":{},"j":{"docs":{},"b":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}}}},"docs":{}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}},"docs":{}}}}}}},"f":{"2":{"8":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}},"docs":{}},"docs":{},"d":{"3":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}}}},"docs":{},"b":{"1":{"docs":{},"b":{"6":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}}},"4":{"docs":{},"n":{"docs":{},"x":{"docs":{},"m":{"docs":{},"n":{"docs":{},"e":{"docs":{},"z":{"docs":{},"u":{"docs":{},"z":{"5":{"5":{"docs":{},"q":{"docs":{},"k":{"docs":{},"y":{"docs":{},"q":{"docs":{},"a":{"docs":{},"h":{"docs":{},"o":{"docs":{},"p":{"docs":{},"k":{"docs":{},"u":{"docs":{},"i":{"docs":{},"m":{"docs":{},"z":{"docs":{},"f":{"0":{"docs":{},"t":{"docs":{},"n":{"5":{"docs":{},"b":{"docs":{},"o":{"docs":{},"i":{"docs":{},"h":{"1":{"docs":{},"d":{"docs":{},"o":{"docs":{},"g":{"5":{"5":{"docs":{},"w":{"docs":{},"u":{"docs":{},"/":{"docs":{},"z":{"docs":{},"y":{"docs":{},"e":{"7":{"docs":{},"d":{"docs":{},"q":{"docs":{},"j":{"docs":{},"v":{"docs":{},"e":{"9":{"docs":{},"l":{"6":{"docs":{},"t":{"docs":{},"e":{"6":{"docs":{},"k":{"docs":{},"t":{"docs":{},"x":{"docs":{},"a":{"docs":{},"l":{"docs":{},"i":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}},"docs":{}}}},"docs":{}}},"docs":{}}}}}}},"docs":{}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}}}}}},"docs":{}}}},"docs":{}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}},"7":{"docs":{},"e":{"9":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}}},"9":{"docs":{},"e":{"9":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}},"docs":{"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.2},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}},"t":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}},"c":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}},"l":{"docs":{},"a":{"docs":{},"c":{"docs":{},"k":{"docs":{},"h":{"docs":{},"o":{"docs":{},"l":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":10.1875},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"e":{"docs":{},"(":{"docs":{},"黑":{"docs":{},"洞":{"docs":{},")":{"docs":{},"是":{"docs":{},"一":{"docs":{},"个":{"docs":{},"传":{"docs":{},"出":{"docs":{},"数":{"docs":{},"据":{"docs":{},"协":{"docs":{},"议":{"docs":{},",":{"docs":{},"它":{"docs":{},"会":{"docs":{},"阻":{"docs":{},"碍":{"docs":{},"所":{"docs":{},"有":{"docs":{},"数":{"docs":{},"据":{"docs":{},"的":{"docs":{},"传":{"docs":{},"出":{"docs":{},",":{"docs":{},"配":{"docs":{},"合":{"docs":{},"路":{"docs":{},"由":{"docs":{},"(":{"docs":{},"r":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.02666666666666667}}}}}},"u":{"docs":{},"g":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.03571428571428571},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.03773584905660377},"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"e":{"docs":{},"g":{"docs":{},"i":{"docs":{},"n":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"l":{"docs":{},"o":{"docs":{},"w":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"t":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"a":{"docs":{},"s":{"docs":{},"h":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}},"c":{"docs":{},"k":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"y":{"docs":{},"t":{"docs":{},"e":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}},"r":{"docs":{},"a":{"docs":{},"n":{"docs":{},"c":{"docs":{},"h":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}}}}},"i":{"docs":{},"g":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}}}},"f":{"9":{"docs":{},"d":{"4":{"docs":{},"d":{"2":{"0":{"9":{"docs":{},"f":{"6":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"c":{"9":{"docs":{},"e":{"docs":{},"e":{"docs":{},"x":{"4":{"docs":{},"v":{"5":{"docs":{},"b":{"docs":{},"/":{"docs":{},"t":{"docs":{},"k":{"docs":{},"k":{"docs":{},"u":{"docs":{},"m":{"docs":{},"y":{"docs":{},"r":{"docs":{},"g":{"5":{"9":{"3":{"docs":{},"a":{"docs":{},"/":{"docs":{},"o":{"docs":{},"d":{"docs":{},"d":{"docs":{},"s":{"docs":{},"r":{"docs":{},"p":{"docs":{},"w":{"docs":{},"a":{"docs":{},"i":{"docs":{},"g":{"docs":{},"b":{"docs":{},"n":{"docs":{},"j":{"docs":{},"d":{"docs":{},"z":{"docs":{},"b":{"docs":{},"f":{"docs":{},"q":{"docs":{},"h":{"7":{"docs":{},"w":{"docs":{},"l":{"docs":{},"y":{"docs":{},"e":{"docs":{},"s":{"docs":{},"a":{"docs":{},"e":{"docs":{},"v":{"docs":{},"r":{"docs":{},"k":{"docs":{},"f":{"docs":{},"j":{"docs":{},"m":{"docs":{},"b":{"docs":{},"z":{"docs":{},"m":{"docs":{},"g":{"docs":{},"f":{"docs":{},"o":{"docs":{},"b":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}},"docs":{}}}}}}}}}}}},"docs":{}}},"docs":{}}}}},"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}},"o":{"docs":{},"r":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.06818181818181818},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.19230769230769232},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}},"/":{"docs":{},"m":{"docs":{},"a":{"docs":{},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"/":{"docs":{},"r":{"docs":{},"e":{"docs":{},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"s":{"docs":{},"e":{"docs":{},"/":{"docs":{},"i":{"docs":{},"n":{"docs":{},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}},"l":{"docs":{},".":{"docs":{},"s":{"docs":{},"h":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"/":{"docs":{},"a":{"docs":{},"s":{"docs":{},"s":{"docs":{},"e":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}}}}},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},"s":{"docs":{},"/":{"docs":{},"b":{"docs":{},"u":{"docs":{},"i":{"docs":{},"l":{"docs":{},"d":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}}}}}}}}}}}}}},"m":{"docs":{},"m":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"i":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}},"o":{"docs":{},"n":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}},"u":{"docs":{},"n":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":5.013333333333334}}}}},"b":{"docs":{},"i":{"docs":{},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"p":{"docs":{},"i":{"docs":{},"l":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"l":{"docs":{},"e":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"n":{"docs":{},"f":{"docs":{},"i":{"docs":{},"g":{"docs":{"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.09090909090909091}},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.09090909090909091}}}}}}},"=":{"docs":{},"/":{"docs":{},"e":{"docs":{},"t":{"docs":{},"c":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"f":{"docs":{},"i":{"docs":{},"g":{"docs":{},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}}}}}}}}}}}}}}}}},"docs":{}}}}}}},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"f":{"docs":{},"i":{"docs":{},"g":{"docs":{},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.09090909090909091}}}}}}}}}}}}}},"u":{"docs":{},"r":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"n":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.019138755980861243}},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"r":{"docs":{},"e":{"docs":{},"u":{"docs":{},"s":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"l":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}}}},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}}}}},"t":{"docs":{},"a":{"docs":{},"c":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"s":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"d":{"docs":{},"e":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{},"a":{"docs":{},"g":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"o":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}}}}},"h":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{},"a":{"2":{"0":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.07692307692307693},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}},"docs":{}}}},"t":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.05660377358490566}},"r":{"docs":{},"o":{"docs":{},"o":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.025}}}}}}},"p":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"_":{"0":{"2":{"docs":{},"/":{"0":{"2":{"docs":{},"_":{"docs":{},"p":{"docs":{},"r":{"docs":{},"o":{"docs":{},"t":{"docs":{},"o":{"docs":{},"c":{"docs":{},"o":{"docs":{},"l":{"docs":{},"s":{"docs":{},".":{"docs":{},"m":{"docs":{},"d":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}}}}},"n":{"docs":{},"g":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"e":{"docs":{},"n":{"docs":{},"x":{"docs":{},"i":{"docs":{},"a":{"docs":{},"o":{"docs":{},"q":{"docs":{},"i":{"docs":{},"n":{"docs":{},"o":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}}}}}}}}}}},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"s":{"docs":{},"i":{"docs":{},"t":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"e":{"docs":{},"s":{"docs":{},";":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"t":{"docs":{},"a":{"docs":{},"g":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}}}}},"d":{"docs":{},"n":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}},"a":{"docs":{},"r":{"docs":{},"d":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}},"s":{"docs":{},"e":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"g":{"docs":{},"t":{"docs":{},"c":{"docs":{},"w":{"docs":{},"g":{"docs":{},"o":{"docs":{},"u":{"docs":{},"o":{"docs":{},"e":{"6":{"8":{"docs":{},"a":{"docs":{},"/":{"docs":{},"b":{"docs":{},"b":{"9":{"docs":{},"p":{"4":{"docs":{},"f":{"docs":{},"o":{"docs":{},"w":{"docs":{},"o":{"docs":{},"n":{"docs":{},"n":{"docs":{},"m":{"7":{"docs":{},"t":{"docs":{},"q":{"docs":{},"j":{"docs":{},"m":{"5":{"docs":{},"e":{"docs":{},"f":{"3":{"0":{"docs":{},"q":{"docs":{},"n":{"docs":{},"b":{"docs":{},"w":{"docs":{},"e":{"8":{"docs":{},"d":{"docs":{},"m":{"docs":{},"y":{"5":{"docs":{},"d":{"docs":{},"v":{"docs":{},"t":{"docs":{},"h":{"docs":{},"f":{"docs":{},"f":{"docs":{},"e":{"docs":{},"q":{"docs":{},"q":{"7":{"0":{"docs":{},"l":{"docs":{},"n":{"docs":{},"n":{"docs":{},"c":{"9":{"docs":{},"s":{"docs":{},"j":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}}}}}},"docs":{}},"docs":{}}}}}}}}}}},"docs":{}}}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}},"docs":{}}}}}},"docs":{}}}}}}}}},"docs":{}}},"docs":{}}}}}},"docs":{}},"docs":{}}}}}}}}}},"x":{"docs":{},"u":{"5":{"docs":{},"f":{"docs":{},"g":{"1":{"docs":{},"v":{"docs":{},"v":{"docs":{},"b":{"docs":{},"h":{"docs":{},"h":{"docs":{},"b":{"docs":{},"p":{"docs":{},"g":{"docs":{},"w":{"docs":{},"s":{"3":{"9":{"docs":{},"u":{"docs":{},"i":{"docs":{},"w":{"docs":{},"z":{"docs":{},"i":{"docs":{},"b":{"docs":{},"s":{"docs":{},"w":{"docs":{},"v":{"docs":{},"f":{"docs":{},"z":{"docs":{},"j":{"2":{"docs":{},"i":{"docs":{},"h":{"docs":{},"o":{"docs":{},"p":{"docs":{},"c":{"docs":{},"j":{"docs":{},"d":{"9":{"docs":{},"s":{"docs":{},"c":{"docs":{},"z":{"docs":{},"w":{"5":{"docs":{},"x":{"docs":{},"v":{"docs":{},"c":{"docs":{},"l":{"docs":{},"c":{"docs":{},"v":{"docs":{},"b":{"1":{"docs":{},"k":{"docs":{},"s":{"docs":{},"u":{"9":{"docs":{},"u":{"docs":{},"d":{"docs":{},"+":{"docs":{},"d":{"8":{"8":{"docs":{},"m":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{}},"docs":{}}}}}},"docs":{}}}}},"docs":{}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}}}},"docs":{}}}},"docs":{}}},"u":{"docs":{},"r":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}}}}},"l":{"docs":{},"o":{"docs":{},"s":{"docs":{},"e":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}},"n":{"docs":{},"e":{"docs":{},",":{"docs":{},"i":{"docs":{},"m":{"docs":{},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}},"i":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}},"s":{"docs":{},":":{"docs":{},"一":{"docs":{},"组":{"docs":{},"服":{"docs":{},"务":{"docs":{},"器":{"docs":{},"认":{"docs":{},"可":{"docs":{},"的":{"docs":{},"用":{"docs":{},"户":{"docs":{},"。":{"docs":{},"c":{"docs":{},"l":{"docs":{},"i":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}}}}}}}}}}}}}}}}}}}}}}}}},"p":{"docs":{},"u":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}}},":":{"docs":{},"\\":{"docs":{},"t":{"docs":{},"e":{"docs":{},"m":{"docs":{},"p":{"docs":{},"\\":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"_":{"docs":{},"a":{"docs":{},"c":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"(":{"docs":{},"w":{"docs":{},"i":{"docs":{},"n":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}}}}},"e":{"docs":{},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"(":{"docs":{},"w":{"docs":{},"i":{"docs":{},"n":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}}},"f":{"docs":{},"b":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.07692307692307693},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}}}}}}}},"i":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}},"d":{"docs":{},"r":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}},"m":{"docs":{},"d":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.03389830508474576}}}},"r":{"docs":{},"e":{"docs":{},"a":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"g":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}},"i":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.030303030303030304},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.06329113924050633}},"b":{"docs":{},"o":{"docs":{},"o":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"h":{"docs":{},"u":{"docs":{},"b":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.05660377358490566}},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.022727272727272728},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.05063291139240506}}}}}},"docs":{}}}}}}},"docs":{}},"y":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}}}},"docs":{}}}}}}}}}}}}}}},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}},":":{"docs":{},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},"s":{"docs":{},":":{"docs":{},"/":{"docs":{},"/":{"docs":{},"g":{"docs":{},"i":{"docs":{},"t":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},".":{"docs":{},"i":{"docs":{},"m":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}}}}}},"docs":{}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}},"f":{"docs":{},"t":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}},"o":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.03787878787878788},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.06329113924050633},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}},"l":{"docs":{},"a":{"docs":{},"n":{"docs":{},"g":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.08333333333333333},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038}},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"/":{"docs":{},"x":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}},":":{"docs":{},"s":{"docs":{},"u":{"docs":{},"d":{"docs":{},"o":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}}},"f":{"docs":{},"m":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"_":{"docs":{},"l":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{},".":{"docs":{},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},".":{"docs":{},"g":{"docs":{},"z":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038}}}}}}}}}}}}}}}},"p":{"docs":{},"a":{"docs":{},"t":{"docs":{},"h":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}},"/":{"docs":{},"b":{"docs":{},"i":{"docs":{},"n":{"docs":{},"/":{"docs":{},"b":{"docs":{},"u":{"docs":{},"i":{"docs":{},"l":{"docs":{},"d":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}}}},"docs":{}}}}}}},"=":{"docs":{},"$":{"docs":{},"h":{"docs":{},"o":{"docs":{},"m":{"docs":{},"e":{"docs":{},"/":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"k":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}}}}}}}}}}}}}}}},"e":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"e":{"docs":{},"n":{"docs":{},"@":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"l":{"docs":{},"o":{"docs":{},"o":{"docs":{},"k":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}}}}}}}}}}}},"n":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"y":{"docs":{},"f":{"docs":{},"t":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}},"p":{"docs":{},"g":{"docs":{},"t":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}},"w":{"docs":{},"l":{"4":{"docs":{},"s":{"docs":{},"r":{"docs":{},"m":{"docs":{},"e":{"docs":{},"d":{"docs":{},"q":{"docs":{},"x":{"docs":{},"m":{"docs":{},"b":{"docs":{},"m":{"docs":{},"w":{"docs":{},"+":{"8":{"docs":{},"c":{"docs":{},"y":{"docs":{},"g":{"docs":{},"i":{"docs":{},"i":{"docs":{},"m":{"docs":{},"m":{"docs":{},"u":{"docs":{},"r":{"docs":{},"j":{"docs":{},"t":{"docs":{},"y":{"docs":{},"+":{"docs":{},"c":{"9":{"docs":{},"z":{"docs":{},"a":{"docs":{},"t":{"docs":{},"h":{"8":{"8":{"docs":{},"n":{"docs":{},"f":{"docs":{},"m":{"docs":{},"y":{"docs":{},"d":{"docs":{},"n":{"docs":{},"g":{"3":{"1":{"2":{"docs":{},"i":{"docs":{},"i":{"docs":{},"o":{"9":{"docs":{},"c":{"docs":{},"s":{"docs":{},"e":{"3":{"docs":{},"l":{"docs":{},"n":{"docs":{},"y":{"docs":{},"l":{"7":{"docs":{},"e":{"docs":{},"o":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}}}}}},"docs":{}}}}},"docs":{}}}}},"docs":{}},"docs":{}},"docs":{}}}}}}}}},"docs":{}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}},"t":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}},"h":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.044642857142857144},"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/protocols/http.html":{"ref":"chapter_02/protocols/http.html","tf":10.666666666666666},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}},"s":{"docs":{},":":{"docs":{},"/":{"docs":{},"/":{"docs":{},"p":{"docs":{},"l":{"docs":{},"u":{"docs":{},"s":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"m":{"docs":{},"u":{"docs":{},"n":{"docs":{},"i":{"docs":{},"t":{"docs":{},"i":{"docs":{},"e":{"docs":{},"s":{"docs":{},"/":{"1":{"1":{"8":{"3":{"2":{"9":{"5":{"4":{"9":{"8":{"0":{"4":{"6":{"2":{"6":{"5":{"8":{"3":{"7":{"0":{"0":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"g":{"docs":{},"p":{"docs":{},"g":{"docs":{},"t":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},"s":{"docs":{},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}},"i":{"docs":{},"t":{"docs":{},"h":{"docs":{},"u":{"docs":{},"b":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"y":{"docs":{},"o":{"docs":{},"u":{"docs":{},"/":{"docs":{},"c":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},"t":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},".":{"docs":{},"g":{"docs":{},"i":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},".":{"docs":{},"i":{"docs":{},"m":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"docs":{}}}}}}},"docs":{}}}}}}}}}}}},"r":{"docs":{},"a":{"docs":{},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"i":{"docs":{},"t":{"docs":{},"h":{"docs":{},"u":{"docs":{},"b":{"docs":{},"u":{"docs":{},"s":{"docs":{},"e":{"docs":{},"r":{"docs":{},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"t":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}},"docs":{}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}},"w":{"docs":{},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}}}}}}}}}}}}}}}},"d":{"docs":{},"o":{"docs":{},"c":{"docs":{},"s":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"s":{"docs":{},"p":{"docs":{},"r":{"docs":{},"e":{"docs":{},"a":{"docs":{},"d":{"docs":{},"s":{"docs":{},"h":{"docs":{},"e":{"docs":{},"e":{"docs":{},"t":{"docs":{},"s":{"docs":{},"/":{"docs":{},"d":{"docs":{},"/":{"1":{"docs":{},"c":{"docs":{},"m":{"docs":{},"n":{"docs":{},"p":{"docs":{},"z":{"docs":{},"u":{"docs":{},"u":{"8":{"docs":{},"z":{"0":{"docs":{},"c":{"docs":{},"p":{"docs":{},"o":{"docs":{},"x":{"docs":{},"u":{"docs":{},"q":{"docs":{},"c":{"docs":{},"z":{"docs":{},"r":{"docs":{},"d":{"docs":{},"u":{"docs":{},"a":{"docs":{},"z":{"docs":{},"g":{"docs":{},"i":{"docs":{},"i":{"3":{"docs":{},"b":{"docs":{},"o":{"docs":{},"t":{"docs":{},"n":{"docs":{},"v":{"6":{"3":{"docs":{},"w":{"4":{"docs":{},"g":{"docs":{},"c":{"docs":{},"w":{"docs":{},"o":{"docs":{},"b":{"docs":{},"f":{"8":{"docs":{},"/":{"docs":{},"p":{"docs":{},"u":{"docs":{},"b":{"docs":{},"h":{"docs":{},"t":{"docs":{},"m":{"docs":{},"l":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}}},"docs":{}},"docs":{}}}}}}},"docs":{}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"t":{"docs":{},"o":{"docs":{},"r":{"docs":{},"a":{"docs":{},"g":{"docs":{},"e":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"p":{"docs":{},"i":{"docs":{},"s":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"g":{"docs":{},"o":{"docs":{},"l":{"docs":{},"a":{"docs":{},"n":{"docs":{},"g":{"docs":{},"/":{"docs":{},"g":{"docs":{},"o":{"1":{"docs":{},".":{"5":{"docs":{},".":{"2":{"docs":{},".":{"docs":{},"l":{"docs":{},"i":{"docs":{},"n":{"docs":{},"u":{"docs":{},"x":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"w":{"docs":{},"i":{"docs":{},"t":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"p":{"docs":{},"r":{"docs":{},"o":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}},":":{"docs":{},"/":{"docs":{},"/":{"1":{"2":{"7":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"1":{"docs":{},":":{"3":{"1":{"2":{"8":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}}},"m":{"docs":{},"l":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}}},"a":{"docs":{},"n":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"f":{"docs":{},"t":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}},"d":{"docs":{},"l":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}}},"s":{"docs":{},"h":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}}}},"p":{"docs":{},"p":{"docs":{},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"o":{"docs":{},"s":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"./":{"ref":"./","tf":0.025}},"n":{"docs":{},"a":{"docs":{},"m":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}}}}}}}},"e":{"docs":{},"l":{"docs":{},"p":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.03773584905660377}}},"l":{"docs":{},"o":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}},".":{"docs":{},"g":{"docs":{},"o":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}},"m":{"docs":{},"a":{"docs":{},"c":{"docs":{},"(":{"docs":{},"h":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}}},"i":{"docs":{},"s":{"docs":{},"t":{"docs":{},"o":{"docs":{},"r":{"docs":{},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":5.0047846889952154}}}}}}}}},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},"o":{"docs":{},"v":{"docs":{},"e":{"docs":{},"@":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.025}}}}}}}}}},"docs":{}}}}},"g":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}},"l":{"docs":{},"e":{"docs":{},"v":{"docs":{},"e":{"docs":{},"l":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"c":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}}}},"i":{"docs":{},"n":{"docs":{},"u":{"docs":{},"x":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.044444444444444446},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}},":":{"docs":{},"k":{"docs":{},"e":{"docs":{},"r":{"docs":{},"n":{"docs":{},"e":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}}}}}}}},"o":{"docs":{},"n":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"n":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"t":{"docs":{},";":{"docs":{},"(":{"docs":{},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}},"e":{"docs":{},"v":{"docs":{},"e":{"docs":{},"l":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.038461538461538464},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.04878048780487805}}}}}},":":{"docs":{},"b":{"docs":{},"i":{"docs":{},"g":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"p":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}},"g":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.04}}}},"u":{"docs":{},"l":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.022727272727272728}}}},"b":{"docs":{},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.04}}}}}},"s":{"docs":{},"h":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"a":{"docs":{},"c":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223}},"k":{"docs":{},"a":{"docs":{},"g":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"e":{"docs":{},"t":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}},"m":{"docs":{},"a":{"docs":{},"n":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}}}},"y":{"docs":{},"p":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}},"t":{"docs":{},"h":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}},"/":{"docs":{},"t":{"docs":{},"o":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},".":{"docs":{},"z":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}}}}}},"docs":{}}}}}},")":{"docs":{},",":{"docs":{},"g":{"docs":{},"o":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}},"=":{"docs":{},"$":{"docs":{},"p":{"docs":{},"a":{"docs":{},"t":{"docs":{},"h":{"docs":{},":":{"docs":{},"/":{"docs":{},"u":{"docs":{},"s":{"docs":{},"r":{"docs":{},"/":{"docs":{},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{},"a":{"docs":{},"l":{"docs":{},"/":{"docs":{},"g":{"docs":{},"o":{"docs":{},"/":{"docs":{},"b":{"docs":{},"i":{"docs":{},"n":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}}}}}}}}}}}}}}}}}}}},"n":{"docs":{},"i":{"docs":{},"c":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"i":{"docs":{},"r":{"docs":{},")":{"docs":{},",":{"docs":{},"一":{"docs":{},"个":{"docs":{},"键":{"docs":{},"是":{"docs":{},"一":{"docs":{},"个":{"docs":{},"字":{"docs":{},"符":{"docs":{},"串":{"docs":{},"(":{"docs":{},"s":{"docs":{},"t":{"docs":{},"r":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"s":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"d":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}}},"c":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}}}}},"r":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.045454545454545456}},"o":{"docs":{},"x":{"docs":{},"i":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.019138755980861243}}},"y":{"docs":{},".":{"docs":{},"i":{"docs":{},"n":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"n":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"l":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"n":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"l":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}}}}}}}}}}}}}}}}}}}}}},")":{"docs":{},"和":{"docs":{},"传":{"docs":{},"出":{"docs":{},"代":{"docs":{},"理":{"docs":{},"(":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"o":{"docs":{},"c":{"docs":{},"o":{"docs":{},"l":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.023121387283236993}}}}}}},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"v":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"i":{"docs":{},"v":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"a":{"docs":{},"t":{"docs":{},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"b":{"docs":{},"u":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}}}}}},"e":{"docs":{},"n":{"docs":{},"n":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}},"r":{"docs":{},"p":{"docs":{},"d":{"1":{"docs":{},"g":{"docs":{},"u":{"docs":{},"x":{"docs":{},"x":{"docs":{},"e":{"docs":{},"o":{"docs":{},"g":{"docs":{},"c":{"docs":{},"w":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}},"docs":{}}},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{},"m":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.023923444976076555}}}}}}}},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.03468208092485549},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}},")":{"docs":{},"接":{"docs":{},"收":{"docs":{},"请":{"docs":{},"求":{"docs":{},",":{"docs":{},"但":{"docs":{},"可":{"docs":{},"以":{"docs":{},"配":{"docs":{},"置":{"docs":{},"一":{"docs":{},"个":{"docs":{},"绕":{"docs":{},"路":{"docs":{},"(":{"docs":{},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}}}}}}}}}}}}}}}}}},":":{"docs":{},"b":{"docs":{},"i":{"docs":{},"g":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}}}}}}}},"i":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"r":{"docs":{},"e":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.045454545454545456},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.14285714285714285},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}},"e":{"docs":{},".":{"docs":{},"s":{"docs":{},"h":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.0625},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},";":{"docs":{},"z":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}}}}}}},"o":{"docs":{},"a":{"docs":{},"d":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}},"a":{"docs":{},"y":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"p":{"docs":{},"o":{"docs":{"./":{"ref":"./","tf":0.025}}}},"q":{"docs":{},"u":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.015151515151515152}}}}}}},"a":{"docs":{},"d":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705}}}},"m":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}},"s":{"docs":{},"p":{"docs":{},"o":{"docs":{},"n":{"docs":{},"s":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625}}}}}},"u":{"docs":{},"l":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"f":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"h":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"c":{"docs":{},"e":{"docs":{},"i":{"docs":{},"v":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"o":{"docs":{},"g":{"docs":{},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"d":{"docs":{},"i":{"docs":{},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"u":{"docs":{},"s":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744}}}}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}},"e":{"docs":{},"r":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}},"o":{"docs":{},"t":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}},"u":{"docs":{},"l":{"docs":{},"e":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}},"s":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038}},"y":{"docs":{},"n":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}}}},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"m":{"docs":{},"d":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}},"v":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}}}}}}},"h":{"docs":{},"a":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{},"s":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.044642857142857144},"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.08823529411764706},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":10.096153846153847},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":10.06140350877193},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.019138755980861243}}}}}}}}}},"e":{"docs":{},"l":{"docs":{},"l":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":10.173913043478262},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":10.029411764705882},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}},"s":{"5":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}},":":{"docs":{},"/":{"docs":{},"/":{"1":{"2":{"7":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"1":{"docs":{},":":{"1":{"0":{"8":{"0":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}},"docs":{},"、":{"docs":{},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},"、":{"docs":{},"d":{"docs":{},"n":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}}}}}}}},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"@":{"docs":{},"g":{"docs":{},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"s":{"8":{"docs":{},"s":{"docs":{},"m":{"docs":{},"l":{"docs":{},"j":{"docs":{},"t":{"9":{"docs":{},"a":{"docs":{},"a":{"docs":{},"r":{"8":{"docs":{},"u":{"3":{"docs":{},"o":{"docs":{},"z":{"docs":{},"n":{"docs":{},"t":{"docs":{},"f":{"docs":{},"n":{"docs":{},"c":{"docs":{},"q":{"docs":{},"t":{"docs":{},"f":{"docs":{},"s":{"docs":{},"n":{"docs":{},"o":{"8":{"docs":{},"f":{"docs":{},"u":{"docs":{},"b":{"docs":{},"y":{"docs":{},"h":{"docs":{},"x":{"docs":{},"m":{"docs":{},"m":{"docs":{},"g":{"docs":{},"s":{"docs":{},"k":{"docs":{},"r":{"docs":{},"c":{"7":{"docs":{},"o":{"docs":{},"e":{"docs":{},"v":{"docs":{},"+":{"docs":{},"t":{"6":{"docs":{},"l":{"docs":{},"j":{"3":{"docs":{},"r":{"docs":{},"d":{"docs":{},"j":{"docs":{},"x":{"docs":{},"g":{"docs":{},"d":{"docs":{},"a":{"docs":{},"f":{"docs":{},"c":{"docs":{},"a":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}},"docs":{}}}},"docs":{}}}}}}},"docs":{}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}},"docs":{}}}}}}},"docs":{}}},"w":{"docs":{},"s":{"docs":{},"l":{"docs":{},"u":{"0":{"5":{"docs":{},"v":{"docs":{},"s":{"docs":{},"d":{"docs":{},"o":{"docs":{},"s":{"docs":{},"m":{"docs":{},"c":{"docs":{},"r":{"0":{"1":{"docs":{},"n":{"docs":{},"i":{"docs":{},"y":{"docs":{},"o":{"docs":{},"a":{"9":{"docs":{},"b":{"docs":{},"e":{"docs":{},"q":{"docs":{},"j":{"docs":{},"m":{"9":{"docs":{},"s":{"docs":{},"m":{"docs":{},"g":{"docs":{},"d":{"docs":{},"/":{"1":{"docs":{},"b":{"docs":{},"+":{"8":{"docs":{},"q":{"docs":{},"z":{"docs":{},"e":{"docs":{},"a":{"docs":{},"i":{"docs":{},"f":{"docs":{},"v":{"docs":{},"a":{"docs":{},"d":{"docs":{},"+":{"docs":{},"s":{"docs":{},"a":{"docs":{},"b":{"docs":{},"i":{"docs":{},"r":{"docs":{},"i":{"docs":{},"d":{"docs":{},"a":{"docs":{},"c":{"docs":{},"o":{"docs":{},"p":{"docs":{},"n":{"3":{"docs":{},"x":{"docs":{},"s":{"docs":{},"h":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}},"docs":{}}}}}}},"docs":{}}}}}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}}}}}}},"docs":{}},"docs":{}}}}},"z":{"docs":{},"z":{"docs":{},"l":{"docs":{},"z":{"docs":{},"i":{"docs":{},"k":{"docs":{},"p":{"docs":{},"u":{"docs":{},"k":{"docs":{},"b":{"docs":{},"e":{"docs":{},"p":{"docs":{},"+":{"5":{"docs":{},"h":{"docs":{},"z":{"docs":{},"x":{"docs":{},"t":{"7":{"docs":{},"x":{"2":{"2":{"docs":{},"w":{"9":{"docs":{},"m":{"docs":{},"+":{"docs":{},"d":{"6":{"docs":{},"w":{"0":{"docs":{},"o":{"docs":{},"o":{"2":{"2":{"docs":{},"h":{"docs":{},"s":{"8":{"docs":{},"z":{"docs":{},"f":{"docs":{},"v":{"1":{"docs":{},"z":{"docs":{},"a":{"docs":{},"v":{"docs":{},"u":{"docs":{},"a":{"5":{"docs":{},"a":{"docs":{},"g":{"0":{"docs":{},"e":{"docs":{},"v":{"docs":{},"o":{"9":{"4":{"docs":{},"m":{"docs":{},"a":{"docs":{},"e":{"docs":{},"q":{"docs":{},"a":{"docs":{},"n":{"docs":{},"o":{"docs":{},"c":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}}}},"docs":{}},"docs":{}}}},"docs":{}}},"docs":{}}}}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}},"e":{"docs":{},"r":{"docs":{},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.25},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.06060606060606061},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}},"i":{"docs":{},"c":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}}}},"n":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}},"t":{"docs":{},"h":{"docs":{},"r":{"docs":{},"o":{"docs":{},"u":{"docs":{},"g":{"docs":{},"h":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.028901734104046242}}},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"o":{"docs":{},"n":{"docs":{},"d":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}},"|":{"docs":{},"s":{"docs":{},"t":{"docs":{},"o":{"docs":{},"p":{"docs":{},"|":{"docs":{},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"t":{"docs":{},"u":{"docs":{},"s":{"docs":{},"|":{"docs":{},"r":{"docs":{},"e":{"docs":{},"l":{"docs":{},"o":{"docs":{},"a":{"docs":{},"d":{"docs":{},"|":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},"t":{"docs":{},"|":{"docs":{},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{},"c":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"i":{"docs":{},"c":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"r":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},".":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}},")":{"docs":{},"、":{"docs":{},"数":{"docs":{},"字":{"docs":{},"(":{"docs":{},"n":{"docs":{},"u":{"docs":{},"m":{"docs":{},"b":{"docs":{},"e":{"docs":{},"r":{"docs":{},")":{"docs":{},"、":{"docs":{},"布":{"docs":{},"尔":{"docs":{},"(":{"docs":{},"b":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},")":{"docs":{},"、":{"docs":{},"数":{"docs":{},"组":{"docs":{},"(":{"docs":{},"a":{"docs":{},"r":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},")":{"docs":{},"和":{"docs":{},"对":{"docs":{},"象":{"docs":{},"(":{"docs":{},"o":{"docs":{},"b":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"g":{"docs":{},"i":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}},"o":{"docs":{},"p":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"u":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}},"d":{"docs":{},"o":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038}}}},"p":{"docs":{},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"i":{"docs":{},"t":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.05},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"c":{"docs":{},"r":{"docs":{},"i":{"docs":{},"p":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"p":{"docs":{},"e":{"docs":{},"c":{"docs":{},"i":{"docs":{},"f":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}}},"t":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.04519774011299435}},"e":{"docs":{},"l":{"docs":{},"e":{"docs":{},"g":{"docs":{},"r":{"docs":{},"a":{"docs":{},"m":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}},":":{"docs":{},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},"s":{"docs":{},":":{"docs":{},"/":{"docs":{},"/":{"docs":{},"t":{"docs":{},"e":{"docs":{},"l":{"docs":{},"e":{"docs":{},"g":{"docs":{},"r":{"docs":{},"a":{"docs":{},"m":{"docs":{},".":{"docs":{},"m":{"docs":{},"e":{"docs":{},"/":{"docs":{},"p":{"docs":{},"r":{"docs":{},"o":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"r":{"docs":{},"m":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},"l":{"docs":{},".":{"docs":{},"a":{"docs":{},"p":{"docs":{},"p":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}}}}}}}}}}}},"s":{"docs":{},"t":{"docs":{"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.18181818181818182},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.030303030303030304}}}},"a":{"docs":{},"m":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"w":{"docs":{},"i":{"docs":{},"t":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.025}},":":{"docs":{},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},"s":{"docs":{},":":{"docs":{},"/":{"docs":{},"/":{"docs":{},"t":{"docs":{},"w":{"docs":{},"i":{"docs":{},"t":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"/":{"docs":{},"p":{"docs":{},"r":{"docs":{},"o":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.045454545454545456}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"c":{"docs":{},"p":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.025423728813559324},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.02824858757062147},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}},"/":{"docs":{},"i":{"docs":{},"p":{"docs":{},"v":{"4":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776}}},"docs":{}}}},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}},"”":{"docs":{},"或":{"docs":{},"“":{"docs":{},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776}}}}}}}}},"f":{"docs":{},"w":{"docs":{},"a":{"docs":{},"w":{"docs":{},"n":{"0":{"docs":{},"b":{"3":{"docs":{},"j":{"docs":{},"p":{"docs":{},"y":{"docs":{},"s":{"docs":{},"b":{"docs":{},"s":{"docs":{},"y":{"docs":{},"x":{"docs":{},"l":{"docs":{},"t":{"docs":{},"b":{"2":{"5":{"docs":{},"k":{"docs":{},"i":{"docs":{},"d":{"docs":{},"x":{"docs":{},"s":{"docs":{},"b":{"3":{"docs":{},"z":{"docs":{},"l":{"docs":{},"q":{"docs":{},"h":{"docs":{},"y":{"docs":{},"y":{"docs":{},"c":{"docs":{},"m":{"docs":{},"f":{"5":{"docs":{},"l":{"docs":{},"m":{"docs":{},"n":{"docs":{},"v":{"docs":{},"b":{"docs":{},"t":{"6":{"docs":{},"j":{"docs":{},"a":{"docs":{},"j":{"0":{"docs":{},"e":{"docs":{},"e":{"docs":{},"w":{"docs":{},"e":{"docs":{},"k":{"docs":{},"a":{"docs":{},"c":{"docs":{},"c":{"docs":{},"f":{"docs":{},"a":{"docs":{},"l":{"docs":{},"a":{"docs":{},"p":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}},"docs":{}}}}},"docs":{}}}}}}}},"docs":{}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}},"docs":{}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}},"x":{"docs":{},"m":{"docs":{},"s":{"docs":{},"w":{"docs":{},"r":{"docs":{},"t":{"4":{"docs":{},"h":{"4":{"5":{"1":{"docs":{},"q":{"docs":{},"s":{"docs":{},"g":{"docs":{},"s":{"docs":{},"c":{"docs":{},"g":{"9":{"docs":{},"e":{"docs":{},"i":{"docs":{},"k":{"docs":{},"i":{"docs":{},"v":{"2":{"docs":{},"i":{"docs":{},"s":{"docs":{},"/":{"docs":{},"g":{"docs":{},"o":{"docs":{},"l":{"docs":{},"h":{"docs":{},"l":{"docs":{},"n":{"docs":{},"k":{"docs":{},"a":{"docs":{},"v":{"docs":{},"e":{"docs":{},"h":{"docs":{},"i":{"docs":{},"c":{"docs":{},"r":{"docs":{},"g":{"docs":{},"s":{"docs":{},"f":{"docs":{},"e":{"docs":{},"c":{"docs":{},"r":{"docs":{},"s":{"docs":{},"b":{"2":{"docs":{},"r":{"docs":{},"n":{"docs":{},"k":{"docs":{},"g":{"docs":{},"w":{"docs":{},"s":{"docs":{},"q":{"docs":{},"/":{"docs":{},"y":{"docs":{},"j":{"docs":{},"i":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}},"docs":{}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}}}}}}},"l":{"docs":{},"w":{"docs":{},"q":{"docs":{},"g":{"docs":{},"v":{"2":{"docs":{},"t":{"3":{"7":{"2":{"docs":{},"u":{"docs":{},"c":{"docs":{},"p":{"docs":{},"n":{"docs":{},"a":{"docs":{},"l":{"docs":{},"h":{"6":{"docs":{},"j":{"docs":{},"s":{"8":{"docs":{},"y":{"docs":{},"/":{"0":{"docs":{},"k":{"docs":{},"k":{"docs":{},"p":{"docs":{},"a":{"docs":{},"e":{"docs":{},"v":{"docs":{},"f":{"docs":{},"k":{"6":{"docs":{},"p":{"docs":{},"g":{"docs":{},"u":{"docs":{},"z":{"docs":{},"m":{"docs":{},"p":{"6":{"docs":{},"f":{"docs":{},"r":{"docs":{},"l":{"docs":{},"x":{"1":{"docs":{},"j":{"0":{"5":{"docs":{},"m":{"docs":{},"t":{"docs":{},"+":{"docs":{},"y":{"docs":{},"r":{"docs":{},"u":{"docs":{},"p":{"2":{"docs":{},"u":{"docs":{},"a":{"docs":{},"d":{"docs":{},"e":{"docs":{},"q":{"docs":{},"g":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}}}}},"docs":{}}}}}}}},"docs":{}}}}}}}}}},"docs":{}}}},"docs":{}}}},"docs":{}}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}}}}},"o":{"5":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{},"k":{"docs":{},"e":{"docs":{},"n":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}},"z":{"docs":{},"p":{"docs":{},"o":{"docs":{},"z":{"8":{"docs":{},"t":{"docs":{},"d":{"docs":{},"e":{"docs":{},"n":{"docs":{},"j":{"docs":{},"a":{"docs":{},"m":{"docs":{},"i":{"7":{"8":{"docs":{},"z":{"docs":{},"r":{"5":{"docs":{},"q":{"docs":{},"c":{"docs":{},"w":{"1":{"docs":{},"v":{"docs":{},"m":{"docs":{},"g":{"docs":{},"y":{"docs":{},"b":{"docs":{},"x":{"docs":{},"l":{"docs":{},"z":{"docs":{},"h":{"docs":{},"e":{"docs":{},"h":{"docs":{},"q":{"docs":{},"n":{"docs":{},"p":{"docs":{},"g":{"3":{"docs":{},"u":{"4":{"docs":{},"q":{"docs":{},"w":{"docs":{},"r":{"docs":{},"u":{"docs":{},"z":{"docs":{},"s":{"docs":{},"y":{"5":{"docs":{},"t":{"docs":{},"o":{"docs":{},"y":{"docs":{},"i":{"docs":{},"x":{"docs":{},"k":{"docs":{},"h":{"docs":{},"q":{"docs":{},"c":{"docs":{},"n":{"docs":{},"c":{"3":{"docs":{},"r":{"docs":{},"y":{"docs":{},"h":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}}}}}}}}}},"docs":{}}}}},"docs":{}}}},"docs":{}},"docs":{}}}}}}}}}},"docs":{}}}}},"y":{"docs":{},"p":{"docs":{},"e":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}},"r":{"docs":{},"u":{"docs":{},"e":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.05555555555555555},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}},"a":{"docs":{},"n":{"docs":{},"s":{"docs":{},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}},"v":{"docs":{},"i":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"o":{"docs":{},"u":{"docs":{},"b":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}},"a":{"docs":{},"g":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}},"r":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}},"m":{"docs":{},"p":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"_":{"docs":{},"a":{"docs":{},"c":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}},"e":{"docs":{},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}},"docs":{}}}}},"i":{"docs":{},"m":{"docs":{},"e":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}},"h":{"docs":{},"i":{"docs":{},"s":{"docs":{},"、":{"docs":{},"s":{"docs":{},"e":{"docs":{},"l":{"docs":{},"f":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}},"a":{"docs":{},"n":{"docs":{},"k":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"r":{"docs":{},"o":{"docs":{},"u":{"docs":{},"g":{"docs":{},"h":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}}},"v":{"1":{"docs":{},".":{"0":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"1":{"0":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"2":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},".":{"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}}},"3":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.03125},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"4":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"5":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"6":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"2":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"3":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"4":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"5":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"6":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}},"7":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"8":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"9":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},".":{"1":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"docs":{}}},"docs":{}}},"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":5.1},"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":10.311111111111112},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.044642857142857144},"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":10.058823529411764},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334},"chapter_00/faq.html":{"ref":"chapter_00/faq.html","tf":1},"chapter_01/":{"ref":"chapter_01/","tf":1},"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.2},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.14583333333333334},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.17142857142857143},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.22727272727272727},"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.36363636363636365},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.09433962264150944},"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.11764705882352941},"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.046242774566473986},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.2},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.09523809523809523},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.06097560975609756},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.06060606060606061},"chapter_03/":{"ref":"chapter_03/","tf":1},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.06666666666666667},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":5.101694915254237},"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.14285714285714285},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.07575757575757576},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.23076923076923078},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.05063291139240506},"chapter_05/":{"ref":"chapter_05/","tf":1},"chapter_05/00_config/":{"ref":"chapter_05/00_config/","tf":0.5},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.037037037037037035},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.3076923076923077},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}},",":{"docs":{},"i":{"docs":{},"n":{"docs":{},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}}}}},".":{"docs":{},"e":{"docs":{},"x":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.05714285714285714}}}}},":":{"docs":{},"$":{"docs":{},"g":{"docs":{},"o":{"docs":{},"p":{"docs":{},"a":{"docs":{},"t":{"docs":{},"h":{"docs":{},"/":{"docs":{},"b":{"docs":{},"i":{"docs":{},"n":{"docs":{},"/":{"docs":{},"b":{"docs":{},"u":{"docs":{},"i":{"docs":{},"l":{"docs":{},"d":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}}}}}}}}}}}},"环":{"docs":{},"境":{"docs":{},"搭":{"docs":{},"建":{"docs":{},",":{"docs":{},"支":{"docs":{},"持":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"协":{"docs":{},"议":{"docs":{},"和":{"docs":{},"s":{"docs":{},"h":{"docs":{},"a":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{},"s":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}},"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.02824858757062147}},"i":{"docs":{},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}},"i":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025}}}}},"r":{"docs":{},"t":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.11764705882352941}}}}},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.044444444444444446},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.044642857142857144},"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.08823529411764706},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":10.060975609756097},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.13559322033898305},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":10.033898305084746},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":10.033333333333333},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705}}}}}}}}},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"n":{"docs":{},"s":{"docs":{},"@":{"docs":{},"t":{"docs":{},"u":{"docs":{},"t":{"docs":{},"a":{"docs":{},"n":{"docs":{},"o":{"docs":{},"t":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}}}}}}}}}}}}}}},"a":{"8":{"docs":{},"x":{"docs":{},"i":{"docs":{},"i":{"docs":{},"n":{"docs":{},"q":{"0":{"docs":{},"h":{"docs":{},"i":{"5":{"docs":{},"p":{"docs":{},"h":{"docs":{},"z":{"9":{"docs":{},"k":{"docs":{},"l":{"docs":{},"y":{"7":{"6":{"docs":{},"k":{"docs":{},"s":{"docs":{},"u":{"docs":{},"q":{"docs":{},"y":{"docs":{},"s":{"docs":{},"z":{"1":{"docs":{},"d":{"docs":{},"r":{"docs":{},"e":{"9":{"2":{"4":{"docs":{},"/":{"1":{"docs":{},"b":{"docs":{},"w":{"docs":{},"l":{"docs":{},"m":{"docs":{},"s":{"1":{"docs":{},"v":{"docs":{},"z":{"docs":{},"e":{"docs":{},"a":{"docs":{},"y":{"docs":{},"b":{"8":{"1":{"docs":{},"t":{"docs":{},"o":{"docs":{},"c":{"docs":{},"t":{"docs":{},"y":{"docs":{},"d":{"3":{"docs":{},"i":{"7":{"docs":{},"i":{"0":{"docs":{},"a":{"docs":{},"f":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}}},"docs":{}}},"docs":{}}}}}}}},"docs":{}},"docs":{}}}}}}}},"docs":{}}}}}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}},"docs":{}}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}}}}},"docs":{}}}},"docs":{}}}}}}},"docs":{},"l":{"docs":{},"u":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}},"p":{"docs":{"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.025423728813559324},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":10.053763440860216},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}},"o":{"docs":{},"i":{"docs":{},"n":{"docs":{},"t":{"docs":{},"_":{"docs":{},"s":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"s":{"docs":{},"_":{"docs":{},"v":{"docs":{},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}}}}}}}}}}}}}}}}},"v":{"docs":{},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},"_":{"docs":{},"f":{"docs":{},"r":{"docs":{},"e":{"docs":{},"e":{"docs":{},"d":{"docs":{},"o":{"docs":{},"m":{"docs":{},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.09090909090909091}}}}}}}}}}}}}}}}}}}}}}}}},"n":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288}}}},"e":{"docs":{},"r":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}},"s":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/flags.html":{"ref":"chapter_01/flags.html","tf":0.18181818181818182},"./":{"ref":"./","tf":0.025},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":5.0047846889952154}}}}}}}},"n":{"docs":{},"e":{"docs":{},"x":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}}}}}},"a":{"0":{"7":{"7":{"docs":{},"c":{"docs":{},"a":{"7":{"2":{"2":{"2":{"docs":{},"b":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}}},"docs":{}},"docs":{}},"docs":{},"m":{"docs":{},"d":{"6":{"4":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.06666666666666667}},".":{"docs":{},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},".":{"docs":{},"g":{"docs":{},"z":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}}}}},"docs":{}},"docs":{}},"a":{"docs":{},"z":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}},"r":{"docs":{},"m":{"6":{"4":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223}}},"docs":{}},"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}},"v":{"6":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}},"docs":{}}},"c":{"docs":{},"h":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}},"g":{"docs":{},"u":{"docs":{},"m":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}}},"d":{"docs":{},"o":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856}}}}},"d":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.05555555555555555},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}}}}},"b":{"2":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}},"e":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.07692307692307693},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"e":{"docs":{},"e":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}},"l":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.036585365853658534},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.0847457627118644},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}}},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}},"w":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"w":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}}}}},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"u":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}},"k":{"2":{"docs":{},"c":{"docs":{},"m":{"docs":{},"l":{"docs":{},"a":{"docs":{},"l":{"docs":{},"z":{"9":{"docs":{},"c":{"docs":{},"i":{"docs":{},"x":{"docs":{},"l":{"docs":{},"l":{"docs":{},"f":{"docs":{},"h":{"docs":{},"j":{"docs":{},"q":{"docs":{},"v":{"docs":{},"a":{"docs":{},"h":{"docs":{},"f":{"6":{"8":{"docs":{},"u":{"docs":{},"c":{"docs":{},"x":{"2":{"docs":{},"p":{"docs":{},"t":{"docs":{},"x":{"docs":{},"z":{"docs":{},"g":{"3":{"docs":{},"m":{"docs":{},"o":{"docs":{},"w":{"docs":{},"h":{"docs":{},"d":{"docs":{},"f":{"docs":{},"q":{"docs":{},"w":{"docs":{},"s":{"0":{"9":{"docs":{},"z":{"docs":{},"k":{"docs":{},"s":{"docs":{},"p":{"docs":{},"w":{"docs":{},"l":{"docs":{},"c":{"docs":{},"l":{"docs":{},"d":{"docs":{},"i":{"docs":{},"a":{"docs":{},"w":{"docs":{},"b":{"docs":{},"w":{"docs":{},"/":{"docs":{},"/":{"docs":{},"m":{"docs":{},"m":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}},"、":{"docs":{},"b":{"docs":{"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05}}}},"p":{"docs":{},"t":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}},"p":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}},"u":{"docs":{},"t":{"docs":{},"h":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.043478260869565216}},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"o":{"docs":{},"m":{"docs":{},"a":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}}}}}},"c":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}},"p":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}},"s":{"docs":{},"i":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616}}},"s":{"docs":{},"e":{"docs":{},"r":{"docs":{},"t":{"docs":{},"e":{"docs":{},"q":{"docs":{},"u":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}},"f":{"docs":{},"f":{"docs":{},"c":{"9":{"docs":{},"f":{"docs":{},"b":{"6":{"docs":{},"c":{"5":{"7":{"2":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}}},"docs":{}}}}},"d":{"docs":{},"e":{"3":{"0":{"5":{"docs":{},"d":{"5":{"4":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{},"b":{"docs":{},"i":{"docs":{},"a":{"docs":{},"n":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}}}},"u":{"docs":{},"g":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}},"、":{"docs":{},"i":{"docs":{},"n":{"docs":{},"f":{"docs":{},"o":{"docs":{},"、":{"docs":{},"w":{"docs":{},"a":{"docs":{},"r":{"docs":{},"n":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"、":{"docs":{},"e":{"docs":{},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}}}}}}}}}},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}}}}},"f":{"docs":{},"a":{"docs":{},"u":{"docs":{},"l":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}},"p":{"docs":{},"t":{"docs":{},"h":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}},"s":{"docs":{},"k":{"docs":{},"t":{"docs":{},"o":{"docs":{},"p":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}},"n":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.04046242774566474},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":10.333333333333334},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.07692307692307693},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}}}}},"k":{"docs":{},"o":{"docs":{},"d":{"docs":{},"e":{"docs":{},"m":{"docs":{},"o":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":10.11111111111111},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"o":{"docs":{},"r":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.1111111111111111},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}},"n":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"@":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0392156862745098}}}}}}}}}},"docs":{}}}}}}},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}},"s":{"docs":{},"t":{"docs":{},"r":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"g":{"docs":{},"i":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304}}}}}}}}}}}}}},"w":{"docs":{},"n":{"docs":{},"l":{"docs":{},"o":{"docs":{},"a":{"docs":{},"d":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}}}},"r":{"docs":{},"v":{"docs":{},"x":{"docs":{},"j":{"docs":{},"/":{"docs":{},"m":{"docs":{},"h":{"docs":{},"d":{"1":{"4":{"docs":{},"r":{"docs":{},"h":{"docs":{},"d":{"docs":{},"c":{"2":{"docs":{},"q":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"c":{"docs":{},"f":{"6":{"9":{"docs":{},"g":{"docs":{},"z":{"docs":{},"z":{"7":{"9":{"docs":{},"g":{"docs":{},"f":{"docs":{},"l":{"docs":{},"c":{"docs":{},"t":{"docs":{},"m":{"docs":{},"c":{"docs":{},"x":{"docs":{},"x":{"docs":{},"b":{"docs":{},"l":{"docs":{},"q":{"docs":{},"m":{"docs":{},"d":{"docs":{},"s":{"docs":{},"y":{"0":{"docs":{},"v":{"docs":{},"w":{"docs":{},"b":{"docs":{},"j":{"5":{"6":{"docs":{},"g":{"docs":{},"i":{"docs":{},"/":{"docs":{},"i":{"docs":{},"g":{"docs":{},"i":{"docs":{},"m":{"docs":{},"z":{"9":{"docs":{},"j":{"docs":{},"p":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}}},"docs":{}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}}},"docs":{}}}}}},"docs":{}},"docs":{}}}}}}}}},"s":{"docs":{},"c":{"docs":{},"t":{"docs":{},"x":{"docs":{},"/":{"docs":{},"j":{"docs":{},"b":{"docs":{},"h":{"docs":{},"+":{"4":{"4":{"docs":{},"x":{"9":{"docs":{},"v":{"docs":{},"t":{"docs":{},"k":{"3":{"docs":{},"g":{"docs":{},"+":{"2":{"docs":{},"s":{"docs":{},"d":{"docs":{},"f":{"docs":{},"d":{"docs":{},"c":{"6":{"docs":{},"t":{"docs":{},"q":{"docs":{},"r":{"docs":{},"b":{"docs":{},"w":{"docs":{},"/":{"docs":{},"l":{"docs":{},"e":{"docs":{},"l":{"docs":{},"c":{"8":{"docs":{},"p":{"7":{"docs":{},"a":{"docs":{},"b":{"docs":{},"e":{"docs":{},"b":{"docs":{},"a":{"docs":{},"a":{"docs":{},"g":{"docs":{},"j":{"docs":{},"a":{"docs":{},"i":{"docs":{},"u":{"docs":{},"e":{"docs":{},"g":{"docs":{},"a":{"docs":{},"e":{"docs":{},"k":{"docs":{},"a":{"docs":{},"a":{"8":{"docs":{},"f":{"docs":{},"a":{"docs":{},"l":{"docs":{},"a":{"docs":{},"p":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}},"docs":{}}}},"docs":{}}}}},"docs":{}}},"docs":{}},"docs":{}}}}}}}}}},"a":{"docs":{},"e":{"docs":{},"m":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}}}},"t":{"docs":{},"a":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"u":{"docs":{},"p":{"docs":{},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}}},"i":{"docs":{},"s":{"docs":{},"p":{"docs":{},"a":{"docs":{},"t":{"docs":{},"c":{"docs":{},"h":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}},"t":{"docs":{},"o":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}}}}}}}}}}}}}}}},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"y":{"docs":{},"n":{"docs":{},"a":{"docs":{},"m":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"i":{"docs":{},"d":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.06097560975609756},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.05084745762711865},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.03954802259887006},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}},":":{"docs":{},"v":{"docs":{},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025}}}}}}}},",":{"docs":{},"并":{"docs":{},"用":{"docs":{},"于":{"docs":{},"通":{"docs":{},"讯":{"docs":{},"。":{"docs":{},"a":{"docs":{},"l":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}}}}}}}}}}},"p":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.044444444444444446},"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.044642857142857144},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.043478260869565216},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.06741573033707865},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.09090909090909091},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.029411764705882353},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.037037037037037035},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}},"t":{"docs":{},"a":{"docs":{},"b":{"docs":{},"l":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"v":{"4":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}},"、":{"docs":{},"i":{"docs":{},"p":{"docs":{},"v":{"6":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776}}},"docs":{}}}}}},"6":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}},"(":{"docs":{},"a":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}},",":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}},"docs":{}}}},"n":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/http.html":{"ref":"chapter_02/protocols/http.html","tf":0.16666666666666666},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.036585365853658534},"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.07692307692307693}},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"l":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}}}}}}}}}}}},")":{"docs":{},"接":{"docs":{},"收":{"docs":{},"用":{"docs":{},"户":{"docs":{},"数":{"docs":{},"据":{"docs":{},",":{"docs":{},"分":{"docs":{},"析":{"docs":{},"之":{"docs":{},"后":{"docs":{},"交":{"docs":{},"由":{"docs":{},"一":{"docs":{},"个":{"docs":{},"传":{"docs":{},"出":{"docs":{},"协":{"docs":{},"议":{"docs":{},"(":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},")":{"docs":{},"发":{"docs":{},"出":{"docs":{},"。":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.041666666666666664},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.023923444976076555}}}}}},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}}},"f":{"docs":{},"o":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"e":{"docs":{},"a":{"docs":{},"g":{"docs":{},"n":{"docs":{},"n":{"docs":{},"z":{"docs":{},"b":{"docs":{},"i":{"docs":{},"u":{"docs":{},"d":{"docs":{},"o":{"docs":{},"a":{"6":{"docs":{},"a":{"docs":{},"u":{"docs":{},"+":{"docs":{},"p":{"docs":{},"o":{"docs":{},"s":{"docs":{},"b":{"2":{"docs":{},"x":{"docs":{},"z":{"docs":{},"q":{"docs":{},"+":{"docs":{},"r":{"docs":{},"k":{"docs":{},"e":{"docs":{},"c":{"docs":{},"u":{"docs":{},"/":{"3":{"docs":{},"a":{"docs":{},"v":{"docs":{},"m":{"docs":{},"t":{"docs":{},"y":{"docs":{},"z":{"3":{"docs":{},"w":{"docs":{},"c":{"docs":{},"e":{"docs":{},"j":{"docs":{},"t":{"3":{"docs":{},"f":{"docs":{},"c":{"4":{"docs":{},"g":{"docs":{},"f":{"9":{"docs":{},"j":{"docs":{},"y":{"2":{"docs":{},"a":{"1":{"6":{"docs":{},"y":{"docs":{},"p":{"docs":{},"m":{"docs":{},"a":{"docs":{},"r":{"docs":{},"m":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}}},"docs":{}}}},"docs":{}}}},"docs":{}}}}}}},"docs":{}}}}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}},"t":{"docs":{},"f":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.038461538461538464}}}}},"i":{"docs":{},"x":{"docs":{},"c":{"docs":{},"k":{"docs":{},"e":{"3":{"docs":{},"u":{"docs":{},"c":{"docs":{},"y":{"docs":{},"h":{"docs":{},"b":{"docs":{},"f":{"7":{"docs":{},"x":{"docs":{},"j":{"docs":{},"d":{"docs":{},"k":{"docs":{},"g":{"docs":{},"p":{"docs":{},"k":{"docs":{},"t":{"docs":{},"s":{"docs":{},"g":{"docs":{},"z":{"docs":{},"f":{"docs":{},"k":{"docs":{},"o":{"docs":{},"d":{"docs":{},"x":{"docs":{},"f":{"docs":{},"z":{"3":{"docs":{},"x":{"docs":{},"a":{"docs":{},"t":{"docs":{},"j":{"docs":{},"e":{"docs":{},"e":{"docs":{},"w":{"8":{"0":{"docs":{},"g":{"docs":{},"e":{"docs":{},"g":{"0":{"5":{"docs":{},"g":{"docs":{},"v":{"docs":{},"m":{"docs":{},"o":{"docs":{},"d":{"9":{"docs":{},"y":{"docs":{},"v":{"docs":{},"f":{"9":{"6":{"docs":{},"q":{"7":{"docs":{},"l":{"docs":{},"v":{"docs":{},"c":{"6":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}},"docs":{}}}}},"docs":{}}},"docs":{}},"docs":{}}}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}}}}}},"r":{"docs":{},"e":{"docs":{},"m":{"docs":{},"j":{"docs":{},"k":{"4":{"docs":{},"s":{"docs":{},"y":{"docs":{},"f":{"docs":{},"v":{"docs":{},"u":{"docs":{},"j":{"docs":{},"j":{"docs":{},"g":{"docs":{},"i":{"9":{"docs":{},"e":{"docs":{},"/":{"docs":{},"b":{"docs":{},"t":{"0":{"docs":{},"m":{"docs":{},"h":{"2":{"docs":{},"+":{"docs":{},"o":{"docs":{},"b":{"docs":{},"c":{"docs":{},"j":{"docs":{},"e":{"docs":{},"j":{"docs":{},"w":{"docs":{},"d":{"docs":{},"/":{"docs":{},"+":{"docs":{},"w":{"5":{"docs":{},"v":{"docs":{},"h":{"docs":{},"k":{"docs":{},"b":{"5":{"docs":{},"s":{"docs":{},"e":{"docs":{},"v":{"docs":{},"a":{"docs":{},"+":{"docs":{},"h":{"docs":{},"w":{"9":{"docs":{},"f":{"docs":{},"y":{"docs":{},"q":{"5":{"6":{"9":{"docs":{},"y":{"2":{"docs":{},"+":{"docs":{},"k":{"docs":{},"m":{"docs":{},"w":{"docs":{},"g":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}},"docs":{}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}},"docs":{}}}}}},"z":{"docs":{},"l":{"0":{"docs":{},"w":{"docs":{},"x":{"docs":{},"s":{"docs":{},"d":{"docs":{},"r":{"docs":{},"m":{"docs":{},"q":{"docs":{},"t":{"docs":{},"d":{"docs":{},"v":{"docs":{},"s":{"docs":{},"z":{"7":{"0":{"docs":{},"m":{"6":{"docs":{},"v":{"docs":{},"e":{"docs":{},"o":{"docs":{},"j":{"docs":{},"o":{"docs":{},"s":{"docs":{},"a":{"1":{"5":{"docs":{},"y":{"docs":{},"l":{"docs":{},"r":{"docs":{},"y":{"docs":{},"z":{"docs":{},"r":{"docs":{},"w":{"docs":{},"n":{"9":{"docs":{},"u":{"7":{"docs":{},"q":{"docs":{},"b":{"docs":{},"p":{"docs":{},"e":{"2":{"docs":{},"m":{"docs":{},"m":{"docs":{},"u":{"docs":{},"y":{"docs":{},"g":{"docs":{},"i":{"9":{"0":{"docs":{},"t":{"docs":{},"v":{"docs":{},"g":{"docs":{},"q":{"docs":{},"k":{"4":{"docs":{},"n":{"docs":{},"l":{"docs":{},"z":{"docs":{},"g":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}},"docs":{}}}}}}},"docs":{}},"docs":{}}}}}}}},"docs":{}}}}}},"docs":{}}},"docs":{}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}},"docs":{}}},"docs":{}},"docs":{}}}}}}}}}}}}}},"docs":{}}},"s":{"docs":{},"s":{"docs":{},"u":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":10.226415094339623},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.022727272727272728},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.03349282296650718}}}}},"v":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},")":{"docs":{},",":{"docs":{},"k":{"docs":{},"e":{"docs":{},"y":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}}}},":":{"docs":{},"m":{"docs":{},"d":{"5":{"docs":{},"(":{"docs":{},"x":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}},"docs":{}}}}},"m":{"docs":{},"p":{"docs":{},"r":{"docs":{},"o":{"docs":{},"v":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.019138755980861243}}}}}}}},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},"a":{"docs":{},"c":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.08571428571428572},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.022727272727272728}}}}}},"n":{"docs":{},"a":{"docs":{},"g":{"docs":{"chapter_04/02_design.html":{"ref":"chapter_04/02_design.html","tf":0.038461538461538464}}}},"u":{"docs":{},"a":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.025}}}}}}},"q":{"docs":{},"i":{"docs":{},"n":{"docs":{},"b":{"docs":{},"f":{"docs":{},"a":{"docs":{},"p":{"docs":{},"e":{"docs":{},"d":{"docs":{},"a":{"docs":{},"b":{"docs":{},"e":{"docs":{},"a":{"docs":{},"d":{"docs":{},"a":{"docs":{},"b":{"docs":{},"h":{"3":{"docs":{},"m":{"docs":{},"k":{"5":{"8":{"docs":{},"u":{"docs":{},"b":{"docs":{},"k":{"docs":{},"k":{"docs":{},"w":{"docs":{},"n":{"docs":{},"d":{"docs":{},"z":{"docs":{},"t":{"docs":{},"f":{"docs":{},"k":{"docs":{},"c":{"docs":{},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"r":{"docs":{},"z":{"docs":{},"u":{"2":{"docs":{},"x":{"docs":{},"f":{"docs":{},"w":{"docs":{},"w":{"docs":{},"r":{"docs":{},"h":{"docs":{},"t":{"docs":{},"d":{"docs":{},"y":{"docs":{},"a":{"docs":{},"n":{"docs":{},"v":{"7":{"docs":{},"e":{"docs":{},"o":{"docs":{},"o":{"0":{"6":{"docs":{},"w":{"docs":{},"r":{"docs":{},"x":{"docs":{},"u":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}},"docs":{}}}}}}}}}}}}}}}}}},"e":{"docs":{},"t":{"docs":{},"h":{"docs":{},"o":{"docs":{},"d":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232}}}}}},"r":{"docs":{},"g":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}},"m":{"docs":{},"o":{"docs":{},"r":{"docs":{},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}}}}},"i":{"docs":{},"l":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.14285714285714285}},"e":{"docs":{},",":{"docs":{},"i":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}}}}}}}}}},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}},"n":{"docs":{},"o":{"docs":{},"r":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}},"d":{"docs":{},"i":{"docs":{},"f":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"r":{"docs":{},"e":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"d":{"5":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288}}},"docs":{}}},"o":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}},"s":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.08571428571428572},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}},"t":{"docs":{},"a":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.057692307692307696},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}},"z":{"docs":{},"e":{"docs":{},"e":{"docs":{},"k":{"docs":{},"x":{"3":{"docs":{},"+":{"docs":{},"b":{"docs":{},"+":{"docs":{},"f":{"docs":{},"j":{"docs":{},"m":{"docs":{},"u":{"docs":{},"a":{"4":{"docs":{},"e":{"docs":{},"y":{"docs":{},"j":{"docs":{},"g":{"5":{"docs":{},"c":{"docs":{},"v":{"docs":{},"b":{"docs":{},"n":{"0":{"docs":{},"w":{"docs":{},"v":{"2":{"docs":{},"i":{"docs":{},"b":{"docs":{},"e":{"docs":{},"j":{"docs":{},"t":{"docs":{},"i":{"7":{"4":{"4":{"docs":{},"b":{"3":{"docs":{},"h":{"docs":{},"w":{"docs":{},"x":{"docs":{},"w":{"9":{"docs":{},"y":{"docs":{},"o":{"docs":{},"i":{"docs":{},"d":{"docs":{},"r":{"docs":{},"s":{"docs":{},"t":{"docs":{},"r":{"docs":{},"m":{"docs":{},"d":{"8":{"docs":{},"i":{"docs":{},"i":{"docs":{},"x":{"docs":{},"f":{"docs":{},"j":{"docs":{},"a":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}}}}}}},"docs":{}}}},"docs":{}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}},"docs":{}}}}}}},"j":{"docs":{},"k":{"docs":{},"x":{"docs":{},"z":{"docs":{},"/":{"9":{"1":{"docs":{},"y":{"docs":{},"j":{"docs":{},"p":{"3":{"docs":{},"j":{"docs":{},"e":{"docs":{},"e":{"docs":{},"z":{"docs":{},"z":{"docs":{},"u":{"docs":{},"l":{"docs":{},"q":{"docs":{},"l":{"docs":{},"i":{"docs":{},"o":{"docs":{},"z":{"4":{"docs":{},"r":{"docs":{},"k":{"3":{"8":{"docs":{},"u":{"docs":{},"b":{"docs":{},"i":{"9":{"6":{"docs":{},"u":{"5":{"docs":{},"n":{"docs":{},"e":{"docs":{},"k":{"docs":{},"q":{"docs":{},"r":{"docs":{},"m":{"docs":{},"w":{"docs":{},"c":{"docs":{},"e":{"6":{"docs":{},"s":{"docs":{},"a":{"docs":{},"t":{"docs":{},"p":{"docs":{},"c":{"docs":{},"h":{"docs":{},"s":{"docs":{},"a":{"0":{"docs":{},"d":{"docs":{},"p":{"docs":{},"j":{"6":{"docs":{},"l":{"docs":{},"y":{"docs":{},"z":{"1":{"docs":{},"i":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{}}}}},"docs":{}}}}},"docs":{}}}}}}}}}},"docs":{}}}}}}}}}}},"docs":{}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}},"docs":{}},"docs":{}}}}}},"p":{"docs":{},"j":{"docs":{},"f":{"6":{"docs":{},"n":{"docs":{},"j":{"docs":{},"x":{"docs":{},"v":{"9":{"docs":{},"k":{"docs":{},"t":{"docs":{},"j":{"docs":{},"j":{"docs":{},"l":{"docs":{},"a":{"3":{"docs":{},"i":{"docs":{},"m":{"docs":{},"a":{"docs":{},"b":{"5":{"docs":{},"a":{"docs":{},"s":{"docs":{},"t":{"docs":{},"f":{"docs":{},"w":{"docs":{},"x":{"1":{"docs":{},"m":{"docs":{},"b":{"docs":{},"t":{"docs":{},"k":{"docs":{},"q":{"docs":{},"t":{"docs":{},"w":{"docs":{},"n":{"docs":{},"l":{"docs":{},"q":{"docs":{},"a":{"docs":{},"u":{"4":{"docs":{},"p":{"docs":{},"v":{"docs":{},"f":{"docs":{},"c":{"docs":{},"m":{"docs":{},"d":{"6":{"docs":{},"/":{"docs":{},"z":{"docs":{},"+":{"docs":{},"k":{"docs":{},"r":{"docs":{},"f":{"docs":{},"t":{"docs":{},"z":{"docs":{},"g":{"docs":{},"p":{"9":{"docs":{},"n":{"docs":{},"b":{"docs":{},"c":{"docs":{},"i":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}},"docs":{}}}}}},"docs":{}}},"e":{"docs":{},"n":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857}},"v":{"docs":{},"z":{"docs":{"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}}}}},"t":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.03389830508474576}},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"r":{"docs":{},"a":{"docs":{},"a":{"docs":{},"o":{"docs":{},"z":{"docs":{},"n":{"docs":{},"v":{"6":{"docs":{},"l":{"docs":{},"v":{"docs":{},"a":{"docs":{},"d":{"docs":{},"i":{"docs":{},"x":{"docs":{},"j":{"docs":{},"j":{"docs":{},"g":{"docs":{},"h":{"7":{"docs":{},"b":{"docs":{},"f":{"docs":{},"h":{"0":{"docs":{},"o":{"docs":{},"d":{"docs":{},"n":{"docs":{},"e":{"docs":{},"a":{"7":{"docs":{},"q":{"docs":{},"a":{"docs":{},"c":{"docs":{},"+":{"docs":{},"i":{"docs":{},"n":{"docs":{},"x":{"docs":{},"k":{"docs":{},"q":{"docs":{},"d":{"6":{"2":{"docs":{},"c":{"docs":{},"a":{"docs":{},"m":{"docs":{},"n":{"3":{"docs":{},"v":{"docs":{},"a":{"docs":{},"e":{"docs":{},"f":{"0":{"docs":{},"p":{"docs":{},"l":{"docs":{},"w":{"docs":{},"u":{"docs":{},"h":{"docs":{},"c":{"docs":{},"z":{"8":{"0":{"docs":{},"t":{"docs":{},"w":{"docs":{},"i":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}},"docs":{}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}},"docs":{}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}}},"b":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.05714285714285714}}}}}}},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}}}}}},"t":{"docs":{},"a":{"docs":{},"g":{"docs":{},"。":{"docs":{},"t":{"docs":{},"y":{"docs":{},"p":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}},"f":{"docs":{},"f":{"docs":{},"i":{"docs":{},"c":{"docs":{},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}},"w":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}},"i":{"docs":{},"n":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.08571428571428572},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}}}}},"k":{"docs":{},"i":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428}}}}},"v":{"docs":{},"s":{"docs":{},"p":{"docs":{},"m":{"docs":{},"w":{"docs":{},"i":{"docs":{},"l":{"docs":{},"g":{"8":{"5":{"docs":{},"w":{"docs":{},"d":{"docs":{},"g":{"docs":{},"/":{"docs":{},"t":{"docs":{},"z":{"docs":{},"m":{"8":{"docs":{},"p":{"docs":{},"s":{"8":{"docs":{},"u":{"docs":{},"m":{"docs":{},"w":{"docs":{},"t":{"6":{"docs":{},"d":{"9":{"docs":{},"r":{"docs":{},"h":{"docs":{},"p":{"docs":{},"k":{"docs":{},"w":{"docs":{},"n":{"docs":{},"l":{"docs":{},"z":{"docs":{},"w":{"docs":{},"y":{"docs":{},"r":{"docs":{},"f":{"docs":{},"y":{"docs":{},"j":{"docs":{},"b":{"docs":{},"p":{"docs":{},"x":{"docs":{},"n":{"6":{"docs":{},"v":{"docs":{},"o":{"docs":{},"p":{"docs":{},"g":{"0":{"docs":{},"o":{"docs":{},"h":{"docs":{},"s":{"docs":{},"g":{"docs":{},"z":{"docs":{},"p":{"docs":{},"j":{"2":{"docs":{},"+":{"docs":{},"i":{"docs":{},"m":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}},"docs":{}}}},"docs":{}}}}}}}}},"docs":{}},"docs":{}}}}}}}}},"w":{"docs":{},"j":{"docs":{},"i":{"docs":{},"b":{"docs":{},"r":{"docs":{},"t":{"docs":{},"y":{"docs":{},"a":{"docs":{},"c":{"docs":{},"c":{"docs":{},"g":{"docs":{},"l":{"docs":{},"z":{"docs":{},"l":{"docs":{},"z":{"docs":{},"/":{"docs":{},"a":{"1":{"docs":{},"s":{"docs":{},"c":{"docs":{},"s":{"docs":{},"t":{"1":{"docs":{},"d":{"docs":{},"c":{"docs":{},"i":{"docs":{},"d":{"docs":{},"w":{"docs":{},"q":{"docs":{},"o":{"docs":{},"q":{"docs":{},"q":{"docs":{},"h":{"7":{"docs":{},"d":{"docs":{},"u":{"docs":{},"k":{"2":{"docs":{},"y":{"docs":{},"v":{"docs":{},"m":{"docs":{},"x":{"docs":{},"g":{"3":{"docs":{},"i":{"docs":{},"d":{"docs":{},"a":{"docs":{},"o":{"docs":{},"f":{"docs":{},"o":{"docs":{},"k":{"docs":{},"a":{"docs":{},"e":{"docs":{},"/":{"docs":{},"u":{"docs":{},"w":{"3":{"1":{"docs":{},"a":{"docs":{},"z":{"docs":{},"t":{"0":{"docs":{},"b":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}},"docs":{}}}}},"docs":{}},"docs":{}}}}}}}}}}}}}},"docs":{}}}}}}},"docs":{}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}}}}}}},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},",":{"docs":{},"w":{"docs":{},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"p":{"docs":{},"i":{"docs":{},"s":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"a":{"docs":{},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"v":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}}}}}},"a":{"docs":{},"n":{"docs":{},"t":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.03773584905660377}}}},"r":{"docs":{},"n":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}}},"o":{"docs":{},"n":{"docs":{},"&":{"docs":{},"#":{"3":{"9":{"docs":{},";":{"docs":{},"t":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}},"docs":{}},"docs":{}}}},"r":{"docs":{},"k":{"docs":{},"s":{"docs":{},"p":{"docs":{},"a":{"docs":{},"c":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}},"l":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.025}},"/":{"docs":{},"h":{"docs":{},"e":{"docs":{},"l":{"docs":{},"l":{"docs":{},"o":{"docs":{},"_":{"docs":{},"a":{"docs":{},"g":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}}}}}}}}}}}},"e":{"docs":{},"b":{"docs":{},"s":{"docs":{},"i":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025}}}}}},"l":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":5.025}}}}}}}},"x":{"7":{"docs":{},"r":{"9":{"2":{"docs":{},"m":{"docs":{},"x":{"docs":{},"q":{"docs":{},"+":{"docs":{},"g":{"docs":{},"c":{"docs":{},"z":{"docs":{},"g":{"docs":{},"e":{"docs":{},"p":{"docs":{},"w":{"docs":{},"g":{"4":{"docs":{},"g":{"docs":{},"o":{"docs":{},"e":{"docs":{},"/":{"docs":{},"x":{"docs":{},"a":{"docs":{},"q":{"docs":{},"h":{"docs":{},"z":{"docs":{},"h":{"8":{"4":{"docs":{},"v":{"docs":{},"z":{"docs":{},"d":{"docs":{},"w":{"docs":{},"z":{"docs":{},"j":{"4":{"docs":{},"c":{"docs":{},"e":{"docs":{},"h":{"docs":{},"p":{"docs":{},"g":{"docs":{},"h":{"docs":{},"a":{"docs":{},"/":{"docs":{},"z":{"docs":{},"/":{"docs":{},"e":{"docs":{},"n":{"docs":{},"q":{"docs":{},"b":{"docs":{},"q":{"docs":{},"b":{"docs":{},"i":{"docs":{},"q":{"docs":{},"a":{"docs":{},"w":{"docs":{},"t":{"docs":{},"x":{"docs":{},"l":{"docs":{},"d":{"4":{"docs":{},"w":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}},"docs":{}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}}}}}}}}},"docs":{}},"docs":{}}},"8":{"6":{"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.044444444444444446},"chapter_01/hardware.html":{"ref":"chapter_01/hardware.html","tf":0.058823529411764705}}},"docs":{}},"docs":{"chapter_00/00_about.html":{"ref":"chapter_00/00_about.html","tf":0.022222222222222223},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.08571428571428572},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288}},"y":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"y":{"docs":{},"@":{"docs":{},"g":{"docs":{},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}}}}}}}}}},"x":{"docs":{},"x":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}}}},".":{"docs":{},"y":{"docs":{},".":{"docs":{},"z":{"docs":{"chapter_04/00_roadmap.html":{"ref":"chapter_04/00_roadmap.html","tf":0.07142857142857142}}}}}},")":{"docs":{},",":{"docs":{},"x":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}}},"z":{"docs":{},"f":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}},"n":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}},"e":{"docs":{},"t":{"docs":{},"c":{"docs":{},"o":{"docs":{},"o":{"docs":{},"k":{"docs":{},"i":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"k":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}},"w":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}},"o":{"docs":{},"n":{"docs":{},"e":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}}},"t":{"docs":{},"a":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}},"w":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}},"a":{"docs":{},"m":{"docs":{},"e":{"docs":{},";":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}},"docs":{}}}}}}},"u":{"8":{"3":{"docs":{},"v":{"docs":{},"l":{"8":{"docs":{},"m":{"docs":{},"h":{"docs":{},"n":{"docs":{},"j":{"docs":{},"u":{"docs":{},"g":{"6":{"0":{"docs":{},"k":{"docs":{},"v":{"docs":{},"b":{"docs":{},"k":{"7":{"docs":{},"a":{"9":{"docs":{},"g":{"docs":{},"r":{"docs":{},"y":{"docs":{},"a":{"docs":{},"v":{"docs":{},"f":{"docs":{},"i":{"docs":{},"o":{"docs":{},"q":{"docs":{},"r":{"docs":{},"v":{"docs":{},"b":{"docs":{},"t":{"docs":{},"d":{"docs":{},"p":{"docs":{},"f":{"4":{"1":{"docs":{},"g":{"docs":{},"+":{"docs":{},"t":{"docs":{},"j":{"docs":{},"p":{"docs":{},"y":{"docs":{},"k":{"docs":{},"r":{"docs":{},"h":{"docs":{},"s":{"docs":{},"j":{"docs":{},"x":{"docs":{},"p":{"docs":{},"g":{"docs":{},"g":{"docs":{},"l":{"docs":{},"x":{"docs":{},"h":{"docs":{},"n":{"docs":{},"z":{"docs":{},"v":{"docs":{},"b":{"docs":{},"f":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}},"docs":{}},"docs":{}}}}}}}},"docs":{}}}},"docs":{}},"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.02531645569620253}},"b":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{},"u":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.008928571428571428},"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}},"环":{"docs":{},"境":{"docs":{},"下":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_05/01_exp.html":{"ref":"chapter_05/01_exp.html","tf":0.038461538461538464}}}}}},"docs":{}}}}}}}}}},"d":{"docs":{},"p":{"docs":{"chapter_00/01_versions.html":{"ref":"chapter_00/01_versions.html","tf":0.017857142857142856},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.07692307692307693},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.06521739130434782},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.025423728813559324},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}},"w":{"docs":{},"b":{"docs":{},"p":{"3":{"docs":{},"t":{"docs":{},"u":{"docs":{},"m":{"docs":{},"x":{"docs":{},"f":{"0":{"docs":{},"f":{"5":{"3":{"docs":{},"u":{"docs":{},"o":{"7":{"docs":{},"f":{"docs":{},"l":{"docs":{},"k":{"docs":{},"a":{"1":{"docs":{},"a":{"7":{"docs":{},"m":{"docs":{},"y":{"docs":{},"a":{"docs":{},"e":{"docs":{},"h":{"docs":{},"f":{"docs":{},"c":{"docs":{},"o":{"docs":{},"r":{"docs":{},"y":{"docs":{},"s":{"docs":{},"a":{"docs":{},"r":{"docs":{},"i":{"docs":{},"o":{"docs":{},"q":{"docs":{},"t":{"docs":{},"p":{"docs":{},"x":{"docs":{},"t":{"docs":{},"z":{"1":{"docs":{},"z":{"7":{"docs":{},"o":{"docs":{},"y":{"docs":{},"b":{"docs":{},"p":{"docs":{},"l":{"docs":{},"r":{"docs":{},"q":{"docs":{},"l":{"docs":{},"b":{"docs":{},"w":{"docs":{},"m":{"docs":{},"l":{"docs":{},"n":{"docs":{},"/":{"docs":{},"y":{"docs":{},"v":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}},"docs":{}}}},"docs":{}},"docs":{}}},"docs":{}}}}}}},"docs":{}}}},"t":{"docs":{},"c":{"docs":{"chapter_01/workflow.html":{"ref":"chapter_01/workflow.html","tf":0.05},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}}},"n":{"docs":{},"z":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}}},"k":{"docs":{},"n":{"docs":{},"o":{"docs":{},"w":{"docs":{},"n":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}}}}},"i":{"docs":{},"t":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"s":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"r":{"docs":{},"/":{"docs":{},"b":{"docs":{},"i":{"docs":{},"n":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}},":":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}}}}}},"docs":{}}}}}}},"docs":{}}}}}}},"docs":{}}}}}},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}}}}}}},"e":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616}}}},"r":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"./":{"ref":"./","tf":0.025}},"n":{"docs":{},"a":{"docs":{},"m":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}}}},"a":{"docs":{},"g":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}},"u":{"docs":{},"i":{"docs":{},"d":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}}}}},"p":{"docs":{},"d":{"docs":{},"a":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.014354066985645933}}}}}}},"j":{"docs":{},"i":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"9":{"8":{"docs":{},"@":{"docs":{},"g":{"docs":{},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}}}}},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":10.228571428571428},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/":{"ref":"chapter_05/00_config/","tf":0.25}}}}},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"n":{"docs":{},"a":{"docs":{},"l":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}},"c":{"docs":{},"t":{"docs":{},"l":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}}}}}}},"a":{"docs":{},"v":{"docs":{},"a":{"docs":{},"s":{"docs":{},"c":{"docs":{},"r":{"docs":{},"i":{"docs":{},"p":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.08571428571428572}}}}}}}}}}}},"k":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}},"e":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"u":{"docs":{},"o":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}},"y":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.04},"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.022598870056497175}},":":{"docs":{},"m":{"docs":{},"d":{"5":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}}}}}},"b":{"docs":{},"d":{"3":{"docs":{},"y":{"docs":{},"n":{"docs":{},"v":{"docs":{},"c":{"docs":{},"l":{"0":{"9":{"6":{"docs":{},"y":{"docs":{},"q":{"docs":{},"d":{"4":{"docs":{},"b":{"docs":{},"/":{"3":{"1":{"docs":{},"f":{"docs":{},"f":{"docs":{},"y":{"7":{"4":{"docs":{},"/":{"docs":{},"h":{"docs":{},"a":{"docs":{},"g":{"docs":{},"e":{"docs":{},"f":{"docs":{},"n":{"docs":{},"h":{"7":{"docs":{},"j":{"docs":{},"w":{"docs":{},"l":{"docs":{},"v":{"docs":{},"a":{"docs":{},"y":{"4":{"docs":{},"m":{"docs":{},"o":{"docs":{},"r":{"docs":{},"d":{"docs":{},"t":{"docs":{},"f":{"docs":{},"f":{"4":{"docs":{},"k":{"docs":{},"b":{"docs":{},"e":{"docs":{},"r":{"docs":{},"j":{"7":{"docs":{},"u":{"3":{"9":{"docs":{},"u":{"docs":{},"e":{"docs":{},"/":{"docs":{},"j":{"docs":{},"g":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}}}},"docs":{}}}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{}}}},"docs":{}}}}},"docs":{}},"docs":{}},"docs":{}}}}}}},"docs":{}}},"u":{"docs":{},"g":{"docs":{},"e":{"docs":{},"i":{"docs":{},"x":{"docs":{},"f":{"docs":{},"z":{"5":{"docs":{},"c":{"docs":{},"r":{"docs":{},"+":{"docs":{},"s":{"docs":{},"m":{"docs":{},"n":{"docs":{},"g":{"docs":{},"f":{"0":{"docs":{},"l":{"0":{"docs":{},"h":{"docs":{},"b":{"docs":{},"r":{"docs":{},"k":{"docs":{},"f":{"docs":{},"l":{"docs":{},"n":{"docs":{},"i":{"docs":{},"l":{"docs":{},"v":{"7":{"docs":{},"w":{"docs":{},"d":{"1":{"docs":{},"w":{"docs":{},"j":{"docs":{},"j":{"docs":{},"m":{"docs":{},"q":{"docs":{},"n":{"docs":{},"v":{"docs":{},"t":{"docs":{},"a":{"docs":{},"b":{"docs":{},"f":{"docs":{},"j":{"docs":{},"f":{"docs":{},"o":{"docs":{},"+":{"docs":{},"t":{"docs":{},"o":{"docs":{},"v":{"docs":{},"a":{"docs":{},"w":{"docs":{},"u":{"docs":{},"h":{"docs":{},"q":{"docs":{},"h":{"1":{"9":{"docs":{},"d":{"docs":{},"l":{"docs":{},"k":{"docs":{},"b":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}},"docs":{}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}},"docs":{}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}}}},"docs":{}}}}}}}}},"q":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"0":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}},"/":{"8":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}},"1":{"0":{"0":{"0":{"0":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}},"docs":{}},"docs":{},".":{"6":{"4":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"1":{"0":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"8":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}},"2":{"7":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"8":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"1":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.038461538461538464}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"6":{"9":{"docs":{},".":{"2":{"5":{"4":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"1":{"6":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"7":{"2":{"docs":{},".":{"1":{"6":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"1":{"2":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{},"u":{"docs":{},"n":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}},"9":{"2":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"2":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"2":{"docs":{},".":{"0":{"docs":{},"/":{"2":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"1":{"6":{"8":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"1":{"6":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"5":{"docs":{},".":{"1":{"5":{"4":{"docs":{},".":{"6":{"4":{"docs":{},".":{"1":{"3":{"1":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"8":{"docs":{},".":{"1":{"8":{"docs":{},".":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"1":{"5":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}},"5":{"1":{"docs":{},".":{"1":{"0":{"0":{"docs":{},".":{"0":{"docs":{},"/":{"2":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{},".":{"1":{"docs":{},".":{"1":{"docs":{},".":{"1":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}},"docs":{}}},"docs":{}}},"2":{"docs":{},".":{"3":{"docs":{},".":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"2":{"0":{"3":{"docs":{},".":{"0":{"docs":{},".":{"1":{"1":{"3":{"docs":{},".":{"0":{"docs":{},"/":{"2":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}},"2":{"0":{"docs":{},".":{"2":{"5":{"5":{"docs":{},".":{"2":{"docs":{},".":{"1":{"5":{"3":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.04}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"7":{"8":{"4":{"8":{"7":{"3":{"9":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{},".":{"2":{"docs":{},".":{"2":{"docs":{},".":{"2":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"3":{"0":{"0":{"0":{"1":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}},"docs":{}},"docs":{}},"docs":{}},"docs":{},"b":{"1":{"2":{"9":{"docs":{},"d":{"docs":{},"e":{"docs":{},"c":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}},"docs":{}},"docs":{}},"docs":{}},".":{"3":{"docs":{},".":{"3":{"docs":{},".":{"3":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"5":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}},"7":{"7":{"docs":{},"f":{"docs":{},"d":{"docs":{},"f":{"docs":{},"d":{"6":{"docs":{},"f":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}},"docs":{}}}}}},"docs":{}},"8":{"docs":{},".":{"8":{"docs":{},".":{"4":{"docs":{},".":{"4":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"8":{"docs":{},".":{"8":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}},"docs":{}}},"docs":{}},"f":{"6":{"2":{"docs":{},"a":{"2":{"8":{"7":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{},"a":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}},"n":{"docs":{},"o":{"docs":{},"t":{"docs":{},"h":{"docs":{},"e":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}},"r":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}}},"c":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"t":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}}}}},"l":{"docs":{},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}}}}}}},"w":{"docs":{},"a":{"docs":{},"y":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},"i":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.036585365853658534},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}}}}}}},"d":{"9":{"3":{"9":{"5":{"4":{"7":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{},"d":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.05555555555555555},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.038461538461538464},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}},"b":{"docs":{},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.08695652173913043}}}}}}}}}}}}},"s":{"docs":{},"i":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955}}}}}}}}}},"u":{"docs":{},"t":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}},"b":{"docs":{},"o":{"docs":{},"o":{"docs":{},"l":{"docs":{},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}},"a":{"docs":{},"i":{"docs":{},"d":{"docs":{},"u":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}}}},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"e":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.024691358024691357},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023}}}}}}}}}}},"g":{"docs":{},"b":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}},"g":{"docs":{},"e":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}},"s":{"docs":{},"p":{"docs":{},"o":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}},"a":{"docs":{},"c":{"docs":{},"k":{"docs":{},"h":{"docs":{},"o":{"docs":{},"l":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}}}},"i":{"docs":{},"t":{"docs":{},".":{"docs":{},"l":{"docs":{},"y":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}},"l":{"docs":{},"y":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}},"i":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}},"n":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}}}}}}}}}}}}}}}}},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}},"i":{"docs":{},"f":{"docs":{},"n":{"docs":{},"o":{"docs":{},"n":{"docs":{},"m":{"docs":{},"a":{"docs":{},"t":{"docs":{},"c":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}}}},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.05555555555555555},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023}}}}}}}}},"n":{"docs":{},"u":{"docs":{},"m":{"docs":{},"b":{"docs":{},"e":{"docs":{},"r":{"docs":{},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}}}},"e":{"docs":{},"t":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"k":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}}}}}},"o":{"docs":{},"n":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.125},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}}},"a":{"docs":{},"u":{"docs":{},"t":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}},";":{"docs":{},"匿":{"docs":{},"名":{"docs":{},"方":{"docs":{},"式":{"docs":{},"和":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"p":{"docs":{},"a":{"docs":{},"s":{"docs":{},"s":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"用":{"docs":{},"户":{"docs":{},"密":{"docs":{},"码":{"docs":{},"方":{"docs":{},"式":{"docs":{},"。":{"docs":{},"默":{"docs":{},"认":{"docs":{},"值":{"docs":{},"为":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"n":{"docs":{},"o":{"docs":{},"a":{"docs":{},"u":{"docs":{},"t":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"b":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}}}},"u":{"docs":{},"t":{"docs":{},"b":{"docs":{},"o":{"docs":{},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}},"t":{"docs":{},"a":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.06741573033707865},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.03225806451612903},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}}}}}}},"s":{"docs":{},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}}}}}}},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"g":{"docs":{},"y":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}}},"e":{"docs":{},"n":{"docs":{},"d":{"docs":{},"t":{"docs":{},"h":{"docs":{},"r":{"docs":{},"o":{"docs":{},"u":{"docs":{},"g":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}},"t":{"docs":{},"t":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.028901734104046242},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.058823529411764705},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.037037037037037035},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.04938271604938271},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.057692307692307696},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.05555555555555555},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.05952380952380952},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.05263157894736842},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.053763440860215055},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.05333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.08695652173913043}}}}}}}}}}}}},"r":{"docs":{},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}}},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"可":{"docs":{},"以":{"docs":{},"匹":{"docs":{},"配":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"s":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"、":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"s":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},".":{"docs":{},"c":{"docs":{},"n":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"和":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"w":{"docs":{},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"s":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},",":{"docs":{},"但":{"docs":{},"不":{"docs":{},"匹":{"docs":{},"配":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"s":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"n":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}},"h":{"docs":{},"a":{"docs":{},"d":{"docs":{},"o":{"docs":{},"w":{"docs":{},"s":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}}}}}}}}}}}}}}}}},"t":{"docs":{},"h":{"docs":{},"i":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/00_json.html":{"ref":"chapter_02/00_json.html","tf":0.02857142857142857}}}}}}}}}},"a":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}},"_":{"docs":{},"t":{"docs":{},"o":{"docs":{},"_":{"docs":{},"d":{"docs":{},"e":{"docs":{},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513}}}}}}}}}}}}}}}}}}},"r":{"docs":{},"a":{"docs":{},"n":{"docs":{},"s":{"docs":{},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}},"y":{"docs":{},"p":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.06741573033707865},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.03225806451612903},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}},"c":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}},";":{"docs":{},"、":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"或":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"t":{"docs":{},"c":{"docs":{},"p":{"docs":{},",":{"docs":{},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}}}}}}},"和":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"t":{"docs":{},"c":{"docs":{},"p":{"docs":{},",":{"docs":{},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"i":{"docs":{},"m":{"docs":{},"e":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}}}}}},"o":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}},"w":{"docs":{},"i":{"docs":{},"m":{"docs":{},"g":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}},"t":{"docs":{},"p":{"docs":{},"i":{"docs":{},"c":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"c":{"docs":{},"u":{"docs":{},"r":{"docs":{},"r":{"docs":{},"e":{"docs":{},"n":{"docs":{},"c":{"docs":{},"y":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}}}}}}}}},"n":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"r":{"docs":{},"e":{"docs":{},"u":{"docs":{},"s":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}}}}}}}}}}},"l":{"docs":{},"i":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}},"h":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},"i":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}},"s":{"docs":{},"i":{"docs":{},"t":{"docs":{},"e":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}},"g":{"docs":{},"f":{"docs":{},"w":{"docs":{},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}}},"d":{"0":{"6":{"0":{"9":{"docs":{},"d":{"4":{"8":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}},"1":{"7":{"docs":{},"a":{"1":{"docs":{},"a":{"docs":{},"f":{"7":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}}}},"docs":{}}},"docs":{}},"docs":{},"i":{"docs":{},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.056179775280898875},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.029411764705882353},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.03225806451612903},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.04}}}}}}}}}}}},"n":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}},"s":{"docs":{},"t":{"docs":{},"r":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"g":{"docs":{},"y":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":0.047619047619047616},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}},"k":{"docs":{},"o":{"docs":{},"d":{"docs":{},"e":{"docs":{},"m":{"docs":{},"o":{"docs":{"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232}}}}}}}}},"e":{"docs":{},"f":{"docs":{},"a":{"docs":{},"u":{"docs":{},"l":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}}}}}},"t":{"docs":{},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.05},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.03571428571428571}}}}}}}}}}}},"r":{"docs":{},"o":{"docs":{},"p":{"docs":{},"b":{"docs":{},"o":{"docs":{},"x":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}},"e":{"1":{"docs":{},"d":{"6":{"docs":{},"c":{"5":{"docs":{},"b":{"1":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}}}}}},"f":{"docs":{},"i":{"docs":{},"e":{"docs":{},"l":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.0449438202247191},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}},"o":{"docs":{},"l":{"docs":{},"l":{"docs":{},"o":{"docs":{},"w":{"docs":{},"r":{"docs":{},"e":{"docs":{},"d":{"docs":{},"i":{"docs":{},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776}}}}}}}}}}}}}}}}}}}},"c":{"0":{"0":{"docs":{},":":{"docs":{},":":{"docs":{},"/":{"7":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}}}}},"docs":{}},"docs":{}},"e":{"8":{"0":{"docs":{},":":{"docs":{},":":{"docs":{},"/":{"1":{"0":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}}}}},"docs":{}},"docs":{},"a":{"docs":{},"t":{"docs":{},"u":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}}}}}}}},"r":{"docs":{},"e":{"docs":{},"e":{"docs":{},"d":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}}},"a":{"docs":{},"c":{"docs":{},"e":{"docs":{},"b":{"docs":{},"o":{"docs":{},"o":{"docs":{},"k":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}},"b":{"docs":{},"c":{"docs":{},"d":{"docs":{},"n":{"docs":{},".":{"docs":{},"n":{"docs":{},"e":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{},"k":{"docs":{},"r":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}},"l":{"docs":{},"i":{"docs":{},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"n":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}}}}},"o":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}},"l":{"docs":{},"e":{"docs":{},"v":{"docs":{},"e":{"docs":{},"l":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}},"v":{"docs":{},"e":{"docs":{},"@":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666}}}}}}}}}}}}}}},"docs":{}}}}},"c":{"docs":{},"a":{"docs":{},"l":{"docs":{},"h":{"docs":{},"o":{"docs":{},"s":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.06060606060606061}}}}}}}}}}}}}}},"e":{"docs":{},"v":{"docs":{},"e":{"docs":{},"l":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.024390243902439025},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.029411764705882353},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.07407407407407407},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.024691358024691357},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.07692307692307693},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.02631578947368421},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}},"r":{"docs":{},"o":{"docs":{},"t":{"docs":{},"o":{"docs":{},"c":{"docs":{},"o":{"docs":{},"l":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.023121387283236993},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.04411764705882353},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.037037037037037035},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.037037037037037035},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.057692307692307696},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.044444444444444446},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.047619047619047616},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.043859649122807015},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.043010752688172046},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.04},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}}},"a":{"docs":{},"s":{"docs":{},"s":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}}}}}}}}}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}},"q":{"docs":{},"q":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}},"r":{"docs":{},"e":{"docs":{},"f":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"h":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}}}}}},"s":{"docs":{},"p":{"docs":{},"o":{"docs":{},"n":{"docs":{},"s":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}},"g":{"docs":{},"e":{"docs":{},"x":{"docs":{},"p":{"docs":{},":":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},",":{"docs":{},"余":{"docs":{},"下":{"docs":{},"部":{"docs":{},"分":{"docs":{},"是":{"docs":{},"一":{"docs":{},"个":{"docs":{},"正":{"docs":{},"则":{"docs":{},"表":{"docs":{},"达":{"docs":{},"式":{"docs":{},"。":{"docs":{},"当":{"docs":{},"此":{"docs":{},"正":{"docs":{},"则":{"docs":{},"表":{"docs":{},"达":{"docs":{},"式":{"docs":{},"匹":{"docs":{},"配":{"docs":{},"目":{"docs":{},"标":{"docs":{},"域":{"docs":{},"名":{"docs":{},"时":{"docs":{},",":{"docs":{},"该":{"docs":{},"规":{"docs":{},"则":{"docs":{},"生":{"docs":{},"效":{"docs":{},"。":{"docs":{},"例":{"docs":{},"如":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"r":{"docs":{},"e":{"docs":{},"g":{"docs":{},"e":{"docs":{},"x":{"docs":{},"p":{"docs":{},":":{"docs":{},"\\":{"docs":{},"\\":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},".":{"docs":{},"*":{"docs":{},"\\":{"docs":{},"\\":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"$":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"匹":{"docs":{},"配":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"w":{"docs":{},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"、":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"f":{"docs":{},"o":{"docs":{},"n":{"docs":{},"t":{"docs":{},"s":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},"a":{"docs":{},"p":{"docs":{},"i":{"docs":{},"s":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},",":{"docs":{},"但":{"docs":{},"不":{"docs":{},"匹":{"docs":{},"配":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}}}},"u":{"docs":{},"l":{"docs":{},"e":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.017341040462427744},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.02247191011235955},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.029411764705882353},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.024691358024691357},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.08695652173913043}}}}}}}}}}},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904}}}}}}}}}}}}},"u":{"docs":{},"d":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608},"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"n":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}},"s":{"docs":{},"e":{"docs":{},"r":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}},";":{"docs":{},"指":{"docs":{},"定":{"docs":{},",":{"docs":{},"密":{"docs":{},"码":{"docs":{},"由":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"p":{"docs":{},"a":{"docs":{},"s":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.021739130434782608}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.05555555555555555},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}},"i":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}},"w":{"docs":{},"a":{"docs":{},"r":{"docs":{},"n":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}},"i":{"docs":{},"k":{"docs":{},"i":{"docs":{},"p":{"docs":{},"e":{"docs":{},"d":{"docs":{},"i":{"docs":{},"a":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}}},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}}}}}}}}}}},"协":{"docs":{},"议":{"docs":{},"名":{"docs":{},"称":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.023121387283236993}}}}}}}}}}},"文":{"docs":{},"件":{"docs":{},"地":{"docs":{},"址":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}}}}}}}}}},"标":{"docs":{},"识":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497}}}}}}}}},"端":{"docs":{},"口":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.005780346820809248}}}}}}}}},"h":{"docs":{},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/blackhole.html":{"ref":"chapter_02/protocols/blackhole.html","tf":0.0625},"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}},"o":{"docs":{},"s":{"docs":{},"t":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}},"m":{"docs":{},"e":{"docs":{},"t":{"docs":{},"h":{"docs":{},"o":{"docs":{},"d":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806}}}}}}}}}}},"d":{"docs":{},"i":{"docs":{},"a":{"docs":{},"f":{"docs":{},"i":{"docs":{},"r":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}}},"i":{"docs":{"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.043478260869565216}}},"s":{"docs":{},"g":{"docs":{},".":{"7":{"1":{"docs":{},".":{"docs":{},"a":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/09_ad_blocker.html":{"ref":"chapter_05/00_config/09_ad_blocker.html","tf":0.043478260869565216}}}}}}}}}}},"docs":{}},"docs":{}}}}},"加":{"docs":{},"密":{"docs":{},"方":{"docs":{},"式":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232}}}}}}}}}}},"密":{"docs":{},"码":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.019230769230769232}}}}}}}}},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}}}}}}}}},"docs":{},"n":{"docs":{},"e":{"docs":{},"x":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}},"m":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.03333333333333333},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.022222222222222223},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.023809523809523808},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.021505376344086023},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}}}}}},"域":{"docs":{},"名":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},":":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},"i":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{},";":{"docs":{},",":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_02/04_dns.html":{"ref":"chapter_02/04_dns.html","tf":0.030303030303030304}}}}}}}}}}}}}}}}}}}}}}}}}}}},"/":{"docs":{},"/":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/":{"ref":"chapter_05/00_config/","tf":0.25}}}}}}}},"v":{"docs":{},"a":{"docs":{},"r":{"docs":{},"/":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{},"/":{"docs":{},"a":{"docs":{},"c":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}}}}}},"e":{"docs":{},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{},".":{"docs":{},"l":{"docs":{},"o":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}}}}},":":{"docs":{},":":{"1":{"docs":{},"/":{"1":{"2":{"8":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/05_dyn_port.html":{"ref":"chapter_05/00_config/05_dyn_port.html","tf":0.011904761904761904},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}}}}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}},".":{"docs":{},"g":{"docs":{},"o":{"docs":{},"o":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.024691358024691357}}}}}}}}}}},"g":{"docs":{},"g":{"docs":{},"p":{"docs":{},"h":{"docs":{},"t":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}},"i":{"docs":{},"t":{"docs":{},"h":{"docs":{},"u":{"docs":{},"b":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}},"o":{"docs":{},"d":{"docs":{},"o":{"docs":{},"c":{"docs":{},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}},"l":{"docs":{},"a":{"docs":{},"n":{"docs":{},"g":{"docs":{},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}},"o":{"docs":{},"g":{"docs":{},"l":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667}}}}}}}}}}}}}}}},"r":{"docs":{},"a":{"docs":{},"v":{"docs":{},"a":{"docs":{},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"t":{"docs":{},"i":{"docs":{},"c":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}},"j":{"docs":{},".":{"docs":{},"m":{"docs":{},"p":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}},"y":{"docs":{},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"u":{"docs":{},".":{"docs":{},"b":{"docs":{},"e":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}},"b":{"docs":{},"e":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}},"t":{"docs":{},"i":{"docs":{},"m":{"docs":{},"g":{"docs":{},".":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}}}}}}}}}}}}}}}}}}}},"z":{"docs":{},"w":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"*":{"docs":{},"o":{"docs":{},"o":{"docs":{"chapter_00/02_donate.html":{"ref":"chapter_00/02_donate.html","tf":0.0196078431372549}}}}}}}}}},"i":{"docs":{},"p":{"docs":{"chapter_01/client.html":{"ref":"chapter_01/client.html","tf":0.02857142857142857},"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}}}}},"e":{"4":{"2":{"docs":{},"f":{"3":{"1":{"2":{"6":{"docs":{},"c":{"9":{"6":{"docs":{},"a":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}},"7":{"7":{"docs":{},"b":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}},"docs":{}},"8":{"0":{"docs":{},"a":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644}}}},"docs":{}},"docs":{},"d":{"docs":{},"a":{"docs":{},"c":{"docs":{},"g":{"docs":{},"w":{"docs":{},"m":{"docs":{},"f":{"docs":{},"c":{"docs":{},"q":{"docs":{},"e":{"docs":{},"g":{"docs":{},"h":{"4":{"docs":{},"a":{"docs":{},"f":{"docs":{},"c":{"docs":{},"w":{"docs":{},"k":{"docs":{},"i":{"docs":{},"b":{"docs":{},"w":{"docs":{},"m":{"docs":{},"f":{"docs":{},"f":{"docs":{},"q":{"docs":{},"o":{"docs":{},"j":{"docs":{},"c":{"docs":{},"a":{"docs":{},"s":{"docs":{},"f":{"docs":{},"f":{"docs":{},"g":{"docs":{},"i":{"docs":{},"d":{"docs":{},"a":{"docs":{},"q":{"docs":{},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{},"g":{"docs":{},"e":{"docs":{},"c":{"docs":{},"f":{"4":{"docs":{},"a":{"docs":{},"a":{"docs":{},"c":{"docs":{},"g":{"docs":{},"k":{"docs":{},"q":{"docs":{},"v":{"4":{"docs":{},"x":{"docs":{},"a":{"docs":{},"l":{"docs":{},"i":{"docs":{},"x":{"docs":{},"i":{"docs":{},"r":{"docs":{},"o":{"docs":{},"q":{"docs":{},"u":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"docs":{}}}}}}}},"w":{"docs":{},"f":{"docs":{},"c":{"docs":{},"q":{"docs":{},"e":{"docs":{},"g":{"docs":{},"h":{"4":{"docs":{},"a":{"docs":{},"a":{"docs":{},"c":{"docs":{},"g":{"docs":{},"k":{"docs":{},"q":{"docs":{},"v":{"4":{"docs":{},"x":{"docs":{},"a":{"docs":{},"l":{"docs":{},"i":{"docs":{},"x":{"docs":{},"i":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{},"w":{"8":{"docs":{},"r":{"docs":{},"a":{"docs":{},"a":{"docs":{},"g":{"4":{"docs":{},"l":{"9":{"docs":{},"/":{"docs":{},"s":{"8":{"docs":{},"e":{"docs":{},"g":{"9":{"0":{"docs":{},"q":{"docs":{},"h":{"docs":{},"s":{"docs":{},"l":{"docs":{},"f":{"docs":{},"p":{"docs":{},"j":{"docs":{},"w":{"docs":{},"z":{"docs":{},"v":{"docs":{},"m":{"docs":{},"y":{"docs":{},"i":{"7":{"docs":{},"r":{"docs":{},"v":{"docs":{},"v":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}},"docs":{}}}},"docs":{}}},"docs":{}}}}}},"docs":{}}}}}}}}}}}},"docs":{}}}}}}}}},"docs":{}}}}}}}}}}}},"f":{"7":{"6":{"3":{"docs":{},"e":{"1":{"7":{"docs":{},"e":{"2":{"1":{"docs":{},"&":{"docs":{},"#":{"3":{"9":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}},"docs":{}}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}}},"docs":{}},"docs":{}},"docs":{}}},"n":{"docs":{},"d":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}},"i":{"docs":{},"a":{"docs":{},"n":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.02824858757062147}}}}}},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"c":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}},"c":{"docs":{},"r":{"docs":{},"y":{"docs":{},"p":{"docs":{},"t":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.009569377990430622}}}}}}},"t":{"docs":{},"r":{"docs":{},"y":{"docs":{},"p":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":5}}}}}},"a":{"docs":{},"b":{"docs":{},"l":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"y":{"docs":{},"g":{"docs":{},"z":{"docs":{},"h":{"docs":{},"y":{"docs":{},"z":{"2":{"docs":{},"i":{"4":{"docs":{},"w":{"docs":{},"a":{"docs":{},"a":{"docs":{},"l":{"docs":{},"t":{"docs":{},"j":{"docs":{},"h":{"docs":{},"x":{"docs":{},"i":{"docs":{},"p":{"docs":{},"w":{"docs":{},"f":{"docs":{},"y":{"docs":{},"s":{"docs":{},"z":{"docs":{},"/":{"4":{"docs":{},"z":{"docs":{},"k":{"9":{"docs":{},"q":{"9":{"docs":{},"h":{"8":{"docs":{},"g":{"0":{"docs":{},"x":{"docs":{},"v":{"docs":{},"/":{"docs":{},"p":{"docs":{},"k":{"9":{"docs":{},"y":{"4":{"docs":{},"o":{"docs":{},"f":{"docs":{},"l":{"docs":{},"p":{"docs":{},"g":{"docs":{},"r":{"7":{"docs":{},"t":{"3":{"docs":{},"v":{"docs":{},"c":{"docs":{},"t":{"docs":{},"m":{"docs":{},"w":{"docs":{},"v":{"docs":{},"m":{"docs":{},"h":{"docs":{},"g":{"docs":{},"z":{"docs":{},"k":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}}},"docs":{}}},"docs":{}}}}}}},"docs":{}}},"docs":{}}},"docs":{}}},"docs":{}}}},"docs":{}}}}}}}}}}}}}}}}}},"docs":{}}},"docs":{}}}}}}},"t":{"docs":{},"c":{"docs":{},"/":{"docs":{},"v":{"2":{"docs":{},"r":{"docs":{},"a":{"docs":{},"y":{"docs":{"chapter_01/server.html":{"ref":"chapter_01/server.html","tf":0.045454545454545456}},"/":{"docs":{},"c":{"docs":{},"o":{"docs":{},"n":{"docs":{},"f":{"docs":{},"i":{"docs":{},"g":{"docs":{},".":{"docs":{},"j":{"docs":{},"s":{"docs":{},"o":{"docs":{},"n":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}}}}}}}}}}}}}}}},"docs":{}}}}},"o":{"docs":{},"f":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}},"x":{"docs":{},"i":{"docs":{},"s":{"docs":{},"t":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}}},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.0379746835443038}}}}}},"h":{"docs":{},"a":{"docs":{},"u":{"docs":{},"s":{"docs":{},"t":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}},"r":{"docs":{},"r":{"docs":{},"o":{"docs":{},"r":{"docs":{"chapter_02/01_overview.html":{"ref":"chapter_02/01_overview.html","tf":0.011560693641618497},"chapter_05/00_config/04_vmess_server.html":{"ref":"chapter_05/00_config/04_vmess_server.html","tf":0.011111111111111112},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.008771929824561403}}}}}},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{"chapter_02/protocols/vmess.html":{"ref":"chapter_02/protocols/vmess.html","tf":0.012195121951219513},"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.05},"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.00847457627118644},"./":{"ref":"./","tf":0.025}}}}}},"f":{"docs":{},"a":{"5":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/07_vps_relay.html":{"ref":"chapter_05/00_config/07_vps_relay.html","tf":0.010752688172043012}}},"docs":{}},"f":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":5.008474576271187},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}},"b":{"6":{"docs":{},"b":{"9":{"docs":{},"e":{"5":{"4":{"6":{"0":{"1":{"4":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.005649717514124294}}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}}},"y":{"docs":{"chapter_03/00_dynport.html":{"ref":"chapter_03/00_dynport.html","tf":0.016666666666666666},"chapter_04/04_compile.html":{"ref":"chapter_04/04_compile.html","tf":0.012658227848101266}},"c":{"docs":{},"d":{"4":{"docs":{},"w":{"docs":{},"t":{"docs":{},"q":{"docs":{},"a":{"docs":{},"p":{"5":{"8":{"docs":{},"s":{"docs":{},"z":{"docs":{},"p":{"docs":{},"x":{"docs":{},"h":{"docs":{},"h":{"docs":{},"g":{"docs":{},"z":{"docs":{},"e":{"docs":{},"j":{"docs":{},"e":{"docs":{},"i":{"docs":{},"c":{"docs":{},"p":{"docs":{},"s":{"docs":{},"p":{"docs":{},"e":{"1":{"docs":{},"p":{"docs":{},"p":{"docs":{},"y":{"docs":{},"r":{"docs":{},"o":{"docs":{},"w":{"docs":{},"+":{"docs":{},"d":{"docs":{},"l":{"8":{"docs":{},"l":{"docs":{},"l":{"docs":{},"+":{"docs":{},"p":{"docs":{},"p":{"docs":{},"m":{"docs":{},"b":{"docs":{},"c":{"docs":{},"l":{"9":{"docs":{},"z":{"docs":{},"a":{"docs":{},"v":{"docs":{},"+":{"docs":{},"+":{"docs":{},"b":{"docs":{},"j":{"docs":{},"k":{"docs":{},"n":{"docs":{},"e":{"docs":{},"l":{"5":{"docs":{},"x":{"docs":{},"z":{"docs":{},"n":{"docs":{"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}}},"docs":{}}}}}}}}}}}}},"docs":{}}}}}}}}}}},"docs":{}}}}}}}}}}},"docs":{}}}}}}}}}}}}}}}}}}},"docs":{}},"docs":{}}}}}}},"docs":{}}},"u":{"docs":{},"m":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.020833333333333332}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{},"u":{"docs":{},"b":{"docs":{"chapter_03/01_effective.html":{"ref":"chapter_03/01_effective.html","tf":0.01694915254237288}}}}},"&":{"docs":{},"#":{"3":{"9":{"docs":{},";":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.025},"chapter_00/pgp.html":{"ref":"chapter_00/pgp.html","tf":0.013333333333333334}}}}},"docs":{}},"docs":{}}}}},"e":{"docs":{},"a":{"docs":{},"r":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}},"f":{"2":{"docs":{},"f":{"0":{"docs":{},"c":{"9":{"docs":{},"a":{"3":{"2":{"docs":{},"a":{"docs":{},"c":{"3":{"docs":{},"&":{"docs":{},"q":{"docs":{},"u":{"docs":{},"o":{"docs":{},"t":{"docs":{"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517}}}}}}}},"docs":{}}}},"docs":{}},"docs":{}}},"docs":{}}},"docs":{}},"d":{"4":{"docs":{"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678}}},"docs":{}}},"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666},"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.01694915254237288}},"o":{"docs":{},"r":{"docs":{},"c":{"docs":{"chapter_01/install.html":{"ref":"chapter_01/install.html","tf":0.010416666666666666}},"i":{"docs":{},"b":{"docs":{},"l":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.029411764705882353}}}}}},"k":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.030303030303030304}}},"b":{"docs":{},"i":{"docs":{},"d":{"docs":{},"d":{"docs":{},"e":{"docs":{},"n":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}}}}}},"l":{"docs":{},"l":{"docs":{},"o":{"docs":{},"w":{"docs":{},"r":{"docs":{},"e":{"docs":{},"d":{"docs":{},"i":{"docs":{},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.05555555555555555}}}}}}}}}}}}}}},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{"chapter_01/errors.html":{"ref":"chapter_01/errors.html","tf":0.058823529411764705}}}},"l":{"docs":{},"s":{"docs":{"chapter_02/protocols/dokodemo.html":{"ref":"chapter_02/protocols/dokodemo.html","tf":0.027777777777777776},"chapter_02/protocols/shadowsocks.html":{"ref":"chapter_02/protocols/shadowsocks.html","tf":0.057692307692307696},"chapter_02/protocols/socks.html":{"ref":"chapter_02/protocols/socks.html","tf":0.06521739130434782},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.014705882352941176},"chapter_05/00_config/01_multi_server.html":{"ref":"chapter_05/00_config/01_multi_server.html","tf":0.018518518518518517},"chapter_05/00_config/02_blacklist.html":{"ref":"chapter_05/00_config/02_blacklist.html","tf":0.012345679012345678},"chapter_05/00_config/03_port_map.html":{"ref":"chapter_05/00_config/03_port_map.html","tf":0.019230769230769232},"chapter_05/00_config/06_shadowsocks.html":{"ref":"chapter_05/00_config/06_shadowsocks.html","tf":0.017543859649122806},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.013333333333333334}}}}},"i":{"docs":{},"x":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886},"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.04784688995215311}}},"e":{"docs":{},"l":{"docs":{},"d":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}},"、":{"docs":{},"c":{"docs":{},"h":{"docs":{},"i":{"docs":{},"n":{"docs":{},"a":{"docs":{},"i":{"docs":{},"p":{"docs":{"chapter_02/03_routing.html":{"ref":"chapter_02/03_routing.html","tf":0.011235955056179775}}}}}}}}}}}}},"l":{"docs":{},"e":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}}}}},"u":{"docs":{},"n":{"docs":{},"c":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"a":{"docs":{},"l":{"docs":{},"i":{"docs":{"chapter_00/versions.html":{"ref":"chapter_00/versions.html","tf":0.004784688995215311}},"t":{"docs":{},"y":{"docs":{},")":{"docs":{},",":{"docs":{},"稳":{"docs":{},"定":{"docs":{},"性":{"docs":{},"(":{"docs":{},"r":{"docs":{},"e":{"docs":{},"l":{"docs":{},"i":{"docs":{},"a":{"docs":{},"b":{"docs":{},"i":{"docs":{},"l":{"docs":{},"i":{"docs":{},"t":{"docs":{},"y":{"docs":{},")":{"docs":{},"或":{"docs":{},"者":{"docs":{},"性":{"docs":{},"能":{"docs":{},"(":{"docs":{},"p":{"docs":{},"e":{"docs":{},"r":{"docs":{},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{},"m":{"docs":{"chapter_01/issue.html":{"ref":"chapter_01/issue.html","tf":0.018867924528301886}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"r":{"docs":{},"e":{"docs":{},"e":{"docs":{},"d":{"docs":{},"o":{"docs":{},"m":{"docs":{"chapter_02/02_protocols.html":{"ref":"chapter_02/02_protocols.html","tf":0.1},"chapter_02/protocols/freedom.html":{"ref":"chapter_02/protocols/freedom.html","tf":10.142857142857142},"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576},"chapter_05/00_config/00_socks_client.html":{"ref":"chapter_05/00_config/00_socks_client.html","tf":0.04411764705882353},"chapter_05/00_config/08_static_hosts.html":{"ref":"chapter_05/00_config/08_static_hosts.html","tf":0.02666666666666667}}}}}}}},"l":{"docs":{},"a":{"docs":{},"g":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}},"n":{"docs":{},"v":{"1":{"docs":{},"a":{"docs":{"chapter_04/03_vmess.html":{"ref":"chapter_04/03_vmess.html","tf":0.011299435028248588}}}},"docs":{}}}},"_":{"docs":{},"t":{"docs":{},"e":{"docs":{},"s":{"docs":{},"t":{"docs":{},".":{"docs":{},"g":{"docs":{},"o":{"docs":{"chapter_04/01_guide.html":{"ref":"chapter_04/01_guide.html","tf":0.007575757575757576}}}}}}}}}}},"length":1896},"corpusTokens":["0","0.0.0.0","0.9","028a0fe86e22"","098a63964b6b"","0pvo/dx6tqs8iv/ardpbpazulostwxkrri2+jqmeokeplsdyprmv9bcgymda8n6w","0x01","0x01:ipv4","0x01:tcp","0x02","0x02:udp","0x03","0x03:ipv6","0,vmess","1","1.0","1.1","1.13","1.14","1.15","1.16","1.5","1.6","1.9","1.x","10","10"","10.7","100","100"","1000","100mb/s,那么下行连接中,vp","10101","1080","10g","10m","10mb,使用过程中内存没有限制,最高可能把机器的可用内存吃完,然后由于内存不足而崩溃。一般而言,客户端的内存使用相对稳定(30mb","10,ubuntu","1100","12.04","12.04+,cento","127.0.0.1","127.0.0.1:1080","128","128mb","132","138","14.04","150m","16","17173","18","19.89","19ec","1itmysunrwgol/utrnyskz2pozx6yfxrdzytuwir0vclw50tffkiocaot3q5fpco","1m29n3c7nz6+abyuynxjgdhkozatuegfjrglzqrod7gb+xtxhbjqkr6jnylzbao5","1wybcx61yyycrbqv91nnfzfdemc8doqsx","2","2"","2.3","2.6.23","20000"","2015.09.30","2015.10.02","2015.10.17","2015.11.11","2015.11.30","2015.12.07","2015.12.12","2015.12.14","2016.01.08","2016.01.11","2016.01.18","2016.01.20","2016.01.25","2016.01.26","2016.02.01","2016.02.05","2016.02.08","2016.02.12","2016.02.17","2016.02.22","2016.02.24","2016.02.26","2016.02.29","2016.03.07","2016.03.31","2016.04.15","2016.04.18","2016.04.21","2016.05.01","2016.05.16","2016.05.29","2016.06.05","2016.06.12","20202","20g","25","256","28394","2xh2yvtbntl9zifdpwq8d7+emgcstkyqcdy6izdd3coeb2stmug31hjs3eftmsrt","3","30","30001","30002","30010","30010"","300100","30100"","30303","32","32位:curl","3389","36","37192","386.tar.gz","39;c48619fe","3eglp0vn+16difru4h62tqms/xsvxib90c4c1tq4fndvszv896/ipllkzdrtgn85","3rt9egqtjklle8e57rqnd3e8gpm6lwx8uyxo1asfxayjjvf+rvb4vzda0dheld2q","4","403","4138","4166.10","42","42ca","431b","4399","43c1","441f","49e0","4a","4a70","4d28","4e81","4mb/","5","50","50m","53","5bf+rlwk0mvygdbhw/be03pmn17oakmr6iknsfcowbyninavclqoe8yvqqaraqab","6","60","64","64mb","64位:curl","65535","65536","6a35282d737f"","6vlp1svwtny/y8tychsbcdaupvmn4syf6qop1svmn299+22zvubp20szsnw233sj","7","70","72a3","75b4","7e62","7、arch","8","80mb","81ee","8af2","8f02","8kmulcgs0hrf7qlwus6zs9q0asu/kkduqj9gruwwfxk4w5moqzohk0jcjazaabi","8m","8、ubuntu","9.972","904d","92ff","9erhwmb1utxjfdhkkntds2cvns5jzjpjit4bt8icd9cetsp3d7wrnt/xmveejxjb","9f28","9fd3","_test.go","a*****u","a077ca7222b4"","accept","access","account","acount","adb2","add","address","adoot","ae","aeee","affc9fb6c572"","ak2cmlalz9cixllfhjqvahf68ucx2ptxzg3mowhdfqws09zkspwlcldiawbw//mm","alloc","allow","alterid","alway","amazon","amd64","amd64.tar.gz","app","apt","arch","argument","arm","arm64","armv6","asi","assertequ","auth","authent","automat","a、b","b","b"","b1b6","b4nxmnezuz55qkyqahopkuimzf0tn5boih1dog55wu/zye7dqjve9l6te6ktxali","b7e9","b9e9","back","bash","begin","below","better","bf9d4d209f64"","big","blackhol","blackhole(黑洞)是一个传出数据协议,它会阻碍所有数据的传出,配合路由(rout","block","branch","bt","btc","bug","byte","c","c9eex4v5b/tkkumyrg593a/oddsrpwaigbnjdzbfqh7wlyesaevrkfjmbzmgfob","c:\\temp\\v2ray_access.log(window","c:\\temp\\v2ray_error.log(window","card","case","cento","cfb","cfb"","cgtcwgouoe68a/bb9p4fowonnm7tqjm5ef30qnbwe8dmy5dvthffeqq70lnnc9sj","ch","chacha20","chang","chapter_02/02_protocols.md","chat","chatroom","chenxiaoqino","chinadn","chinaip","chinasit","chinasites;outboundtag","ci","cidr","client","clients:一组服务器认可的用户。client","clone,import","close","cmd","code","combin","comment","commit","common","commun","compil","complet","concurr","config","config.json","config=/etc/v2ray/config.json","config=config.json","configur","connect","connectionhandl","connectionreus","consid","contact","content","core","core/master/release/instal","core/master/release/install.sh","core/testing/assert","core/tools/build","coverag","cpu","creat","curl","cxu5fg1vvbhhbpgws39uiwzibswvfzj2ihopcjd9sczw5xvclcvb1ksu9ud+d88m","daemon","data","de305d54","debian","debug","debug、info、warning、error","default","defens","depth","desktop","detour","direct","dispatch","dispatchtooutbound","dn","docker","dokodemo","domain","domainstrategi","[email protected]","door","door"","download","drvxj/mhd14rhdc2qtercf69gzz79gflctmcxxblqmdsy0vwbj56gi/igimz9jpt","dsctx/jbh+44x9vtk3g+2sdfdc6tqrbw/lelc8p7abebaagjaiuegaekaa8falap","duplic","dynam","e42f3126c96a"","e77b","e80a","eb6b9e546014","edacgwmfcqegh4afcwkibwmffqojcasffgidaqachgecf4aacgkqv4xalixiroqu","edacgwwfcqegh4aacgkqv4xalixirorw8raag4l9/s8eg90qhslfpjwzvmyi7rvv","edf763e17e21'","efa5","effect","email","enabl","encrypt","end","endian","enhanc","entryp","eof","error","etc/v2ray","etc/v2ray/config.json","exhaust","exist","export","eygzhyz2i4waaltjhxipwfysz/4zk9q9h8g0xv/pk9y4oflpgr7t3vctmwvmhgzk","f","f2d4","f2f0c9a32ac3"","fail","fals","field","field、chinaip","file","fix","flag","fnv1a","followredirect","forbidden","forc","forcibl","fork","freedom","functionali","functionality),稳定性(reliability)或者性能(perform","g","ge****[email protected]","gener","gift","git","gitbook","github","github.com/v2ray/v2ray","github.com/your/v2ray","gitter","gitter:https://gitter.im/v2ray/v2ray","go","go_latest.tar.gz","gofmt","golang","golang.org/x","golang:sudo","googl","google.com","gopath","gopath/bin/build","gopath/bin/v2ray","gopath=$home/work","gpgtool","gt","gwl4srmedqxmbmw+8cygiimmurjty+c9zath88nfmydng312iio9cse3lnyl7eo","gyft.com","h","han***ft","handler","happi","hash","hello","hello.go","help","histori","hmac(h","host","hostnam","html","http","http://127.0.0.1:3128","https://docs.google.com/spreadsheets/d/1cmnpzuu8z0cpoxuqczrduazgii3botnv63w4gcwobf8/pubhtml","https://github.com/you/cooltool.git","https://gitter.im/v2ray/v2ray","https://gpgtools.org","https://plus.google.com/communities/118329549804626583700","https://raw.githubusercontent.com/v2ray/v2ray","https://storage.googleapis.com/golang/go1.5.2.linux","https://twitter.com/projectv2ray","https://www.google.com","id","id,并用于通讯。alterid","id:vmess","ieagnnzbiudoa6au+posb2xzq+rkecu/3avmtyz3wcejt3fc4gf9jy2a16ypmarm","ietf","iixcke3ucyhbf7xjdkgpktsgzfkodxfz3xatjeew80geg05gvmod9yvf96q7lvc6","improv","inbound","inbounddetour","inbounddetourhandl","inbound)接收用户数据,分析之后交由一个传出协议(outbound)发出。v2ray","info","instal","intern","invalid","ip","iptabl","ipv4","ipv4、ipv6","ipv6","ip(a","ip,v2ray","iremjk4syfvujjgi9e/bt0mh2+obcjejwd/+w5vhkb5seva+hw9fyq569y2+kmwg","issu","iv","iv),key","iv:md5(x","izl0wxsdrmqtdvsz70m6veojosa15ylryzrwn9u7qbpe2mmuygi90tvgqk4nlzg","javascript","ji********[email protected]","journal","journalctl","json","k","kbd3ynvcl096yqd4b/31ffy74/hagefnh7jwlvay4mordtff4kberj7u39ue/jg","ke*****uo","key","key:md5","kugeixfz5cr+smngf0l0hbrkflnilv7wd1wjjmqnvtabfjfo+tovawuhqh19dlkb","l","latest","level","linux","linux:kernel","lion","listen","local","log","loglevel","[email protected]","lt;(curl","l:big","m","mac","manag","manual","master","md5","memori","merg","method","mileston","milestone,i","minor","mit","mock","modifi","more","mqinbfapedabeadabh3mk58ubkkwndztfkchttrzu2xfwwrhtdyanv7eoo06wrxu","n","name;v2ray","netcooki","network","new","none","notat","now","o","object","offici","ojkxz/91yjp3jeezzulqlioz4rk38ubi96u5nekqrmwce6satpchsa0dpj6lyz1i","on","open","openvz","opjf6njxv9ktjjla3imab5astfwx1mbtkqtwnlqau4pvfcmd6/z+krftzgp9nbci","opt","option","oraaoznv6lvadixjjgh7bfh0odnea7qac+inxkqd62camn3vaef0plwuhcz80twi","os","ota","otzeekx3+b+fjmua4eyjg5cvbn0wv2ibejti744b3hwxw9yoidrstrmd8iixfja","outbound","outbounddetour","outboundtag。typ","p","pac","packag","packet","pacman","pair),一个键是一个字符串(str","panic","pascal","password","password"","path","path/to/v2ray.zip","path=$path:/usr/local/go/bin","path),go","paypal","penn","perform","perpd1guxxeogcw","pgp","pleas","point","port","port)接收请求,但可以配置一个绕路(detour","port:big","pr","privateattribut","process","protocol","provid","proxi","proxy.inboundconnectionhandl","proxy.outboundconnectionhandl","proxy)和传出代理(outbound","public","pull","push","q","quot;"","quot;.goo"","quot;//"","quot;/var/log/v2ray/access.log"","quot;/var/log/v2ray/error.log"","quot;0","quot;0.0.0.0"","quot;0.0.0.0/8"","quot;1.1.1.1"","quot;1.2.3.4"","quot;10.0.0.0/8"","quot;100.64.0.0/10"","quot;10000","quot;127.0.0.0/8"","quot;127.0.0.1"","quot;169.254.0.0/16"","quot;172.16.0.0/12"","quot;17un.co"","quot;192.0.0.0/24"","quot;192.0.2.0/24"","quot;192.168.0.0/16"","quot;195.154.64.131"","quot;198.18.0.0/15"","quot;198.51.100.0/24"","quot;2.2.2.2"","quot;203.0.113.0/24"","quot;220.255.2.153"","quot;27848739","quot;3.3.3.3"","quot;30001","quot;3b129dec","quot;5","quot;77fdfd6f","quot;8.8.4.4"","quot;8.8.8.8"","quot;8f62a287","quot;::1/128"","quot;a","quot;a"","quot;access"","quot;accounts"","quot;ad939547","quot;adblock"","quot;address"","quot;allocate"","quot;alterid"","quot;always"","quot;another"","quot;array"","quot;arrayvalue"","quot;asis"","quot;auth"","quot;baidu.com"","quot;bit.ly"","quot;bitly.com"","quot;blackhole"","quot;blocked"","quot;blogblog"","quot;blogger"","quot;blogspot"","quot;boolvalue"","quot;chinagfw.org"","quot;chinaip"","quot;chinasites"","quot;clients"","quot;concurrency"","quot;connectionreuse"","quot;d0609d48","quot;d17a1af7","quot;default"","quot;detour"","quot;direct"","quot;dns"","quot;dns.google.com"","quot;dokodemo","quot;domain"","quot;domainstrategy"","quot;dropbox.com"","quot;e1d6c5b1","quot;email"","quot;error"","quot;facebook.com"","quot;fbcdn.net"","quot;fc00::/7"","quot;fe80::/10"","quot;features"","quot;field"","quot;flickr.com"","quot;followredirect"","quot;freedom"","quot;ggpht"","quot;github"","quot;godoc.org"","quot;golang.org"","quot;google.com"","quot;gravatar.com"","quot;gstatic"","quot;gstatic.com"","quot;hosts"","quot;http"","quot;id"","quot;inbound"","quot;inbounddetour"","quot;ip"","quot;ipifnonmatch"","quot;is"","quot;j.mp"","quot;level"","quot;listen"","quot;localhost"","quot;log"","quot;loglevel"","quot;[email protected]"","quot;mediafire.com"","quot;method"","quot;mi","quot;msg.71.am"","quot;network"","quot;noauth"","quot;noauth"匿名方式和"password"用户密码方式。默认值为"noauth"","quot;none"","quot;numbervalue"","quot;object"","quot;objectvalue"","quot;outbound"","quot;outbounddetour"","quot;outboundtag"","quot;pass"","quot;password"","quot;port"","quot;protocol"","quot;qq.com"","quot;random"","quot;refresh"","quot;regexp:",余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如"regexp:\\\\.goo.*\\\\.com$"匹配"www.google.com"、"fonts.googleapis.com",但不匹配"google.com"","quot;response"","quot;routing"","quot;rules"","quot;sendthrough"","quot;servers"","quot;settings"","quot;shadowsocks"","quot;sina.com"可以匹配"sina.com"、"sina.com.cn"和"www.sina.com",但不匹配"sina.cn"","quot;socks"","quot;strategy"","quot;string"","quot;stringvalue"","quot;t.co"","quot;tag"","quot;tag_to_detour"","quot;tcp"","quot;tcp"、"udp"和"tcp,udp"","quot;tcp"、"udp"或"tcp,udp"","quot;thi","quot;this"","quot;timeout"","quot;to"","quot;transport"","quot;twimg.com"","quot;twitpic.com"","quot;twitter.com"","quot;type"","quot;udn.com"","quot;udp"","quot;useip"","quot;user"","quot;user"指定,密码由"pass"","quot;users"","quot;v2ray","quot;v2ray"","quot;vmess"","quot;vnext"","quot;warning"","quot;wikipedia.com"","quot;wikipedia.org"","quot;www.google.com"","quot;youtu.be"","quot;youtube.com"","quot;ytimg.com"","quot;加密方式"","quot;协议名称"","quot;域名":"ip",ip","quot;密码"","quot;文件地址"","quot;标识"","quot;端口"","random","re","read","receiv","recogn","redirect","refresh","relay","releas","release.sh","release;z","reload","remot","repo","request","respons","result","reus","root","rout","router","rule","s","s*******@gmail.com","script","second","secur","send","sendthrough","server","servic","set","shadowsock","shell","site","sock","socks5","socks5://127.0.0.1:1080","socks、http、dn","specif","specifi","sss8smljt9aar8u3ozntfncqtfsno8fubyhxmmgskrc7oev+t6lj3rdjxgdafca","start","start|stop|status|reload|restart|forc","static","stop","strategi","string."","string)、数字(number)、布尔(bool)、数组(array)和对象(object","su","sudo","support","swslu05vsdosmcr01niyoa9beqjm9smgd/1b+8qzeaifvad+sabiridacopn3xsh","sync","systemd","systemv","szzlzikpukbep+5hzxt7x22w9m+d6w0oo22hs8zfv1zavua5ag0evo94maeqanoc","t","tag","tar","tcfwawn0b3jpysbsyxltb25kidxsb3zlqhyycmf5lmnvbt6jaj0eewekaccfalap","tcp","tcp/ipv4","tcp/udp","tcp”或“udp","tcxmswrt4h451qsgscg9eikiv2is/golhlnkavehicrgsfecrsb2rnkgwsq/yjit","team","telegram","telegram:https://telegram.me/projectv2ray","terminal.app","test","thank","this、self","through","time","timeout","tlwqgv2t372ucpnalh6js8y/0kkpaevfk6pguzmp6frlx1j05mt+yrup2uadeqgt","tmp/v2ray_access.log","tmp/v2ray_error.log","to5t","token","transport","travi","tri","troubl","true","twitter","twitter:https://twitter.com/projectv2ray","type","tzpoz8tdenjami78zr5qcw1vmgybxlzhehqnpg3u4qwruzsy5toyixkhqcnc3ryh","u","u83vl8mhnjug60kvbk7a9gryavfioqrvbtdpf41g+tjpykrhsjxpgglxhnzvbfid","ubuntu","ubuntu环境下v2ray","udp","unit","unknown","unzip","updat","us","usag","useip","user","username"","usr/bin/v2ray","usr/bin/v2ray/v2ray","usr/bin/v2ray/v2ray:v2ray","usr/loc","utc","uuid","uwbp3tumxf0f53uo7flka1a7myaehfcorysarioqtpxtz1z7oybplrqlbwmln/yv","v","v******[email protected]","v1.0","v1.1","v1.10","v1.11","v1.12","v1.12.1","v1.13","v1.14","v1.15","v1.16","v1.2","v1.3","v1.4","v1.5","v1.6","v1.7","v1.8","v1.9","v1.9.1","v2ray","v2ray.ex","v2ray环境搭建,支持v2ray协议和shadowsock","v2ray,instal","v2ray:$gopath/bin/build","va8xiinq0hi5phz9kly76ksuqysz1dre924/1bwlms1vzeayb81toctyd3i7i0af","valu","ver","version","virt","visit","vista","vmess","vmessout","vnext","vp","vpn","vpoint_socks_vmess.json","vpoint_vmess_freedom.json","w","want","warn","websit","welcom","wiki","window","won't","workspac","world","world/hello_again.go","wsarecv","wvspmwilg85wdg/tzm8ps8umwt6d9rhpkwnlzwyrfyjbpxn6vopg0ohsgzpj2+im","wwjibrtyaccglzlz/a1scst1dcidwqoqqh7duk2yvmxg3idaofokae/uw31azt0b","www.google.com,www.googleapis.com","x","x),x","x.y.z","x7r92mxq+gczgepwg4goe/xaqhzh84vzdwzj4cehpgha/z/enqbqbiqawtxld4wt","x86","xxx","xy****[email protected]","xzf","y","ycd4wtqap58szpxhhgzejeicpspe1ppyrow+dl8ll+ppmbcl9zav++bjknel5xzn","year","you'd","youtub","yum","zip","zw*****oo"],"pipeline":["trimmer","stopWordFilter","stemmer"]},"store":{"./":{"url":"./","title":"Welcome to V2Ray","body":"V2Ray User Manual\nWelcome to V2Ray. If you have trouble visiting some websites in the world, V2Ray might be useful to you.\nLatest Version\nV2Ray 1.16\nContact\n\nTelegram:https://telegram.me/projectv2ray\nChatroom: https://gitter.im/v2ray/v2ray-core\nTwitter: https://twitter.com/projectv2ray\nEmail: [email protected] PGP\n\nUpdate this site\nThis site is generated by GitBook, and host on GitHub. If you'd like to modify its content, please send pull request to this repo.\n"},"chapter_00/00_about.html":{"url":"chapter_00/00_about.html","title":"关于 V2Ray","body":"关于 V2Ray\nV2Ray 是什么?\nV2Ray 是一个开源项目,使用 Go 语言编写,可运行于多个操作系统之上。V2Ray 是一个平台,支持多种网络代理协议。在 V2Ray 的帮助下,用户通过一些配置即可实现从一种协议到另一种协议的转换。\nV2Ray 自有的 VMess 协议,可以用于混淆网络数据,使得数据在两个 V2Ray 节点之间不可被识别。\n主要功能\n多用户支持\nV2Ray 提供的 VMess 协议支持多用户,只需要开启一个端口,就可以让多个用户以不同的 ID 连接进来,不需要一个用户对应一个端口。\n动态端口\n经过配置,V2Ray 服务器端可以周期性改动通信端口,以规避某些运营商的流量限制。\n灵活配置\nV2Ray 支持多种代理协议,并可按需求灵活配置。使用同一个 V2Ray 应用程序,搭配不同的配置文件,即可完成代理客户端、服务器或者中转的不同使用场景。\n内置路由\nV2Ray 内置了路由功能,可以灵活地设置哪些网站(或 IP)使用代理,哪些网站(或 IP)直连。相较于使用浏览器的 PAC 设置,V2Ray 的路由功能更为高效,在某些使用场景下配置更灵活。\n支持平台\nV2Ray 在以下平台中可用:\n\nWindows Vista 及之后版本(x86 / amd64);\nMac OS X 10.7 及之后版本(amd64);\nLinux 2.6.23 及之后版本(x86 / amd64 / arm / arm64);\n包括但不限于 Debian 7 / 8、Ubuntu 12.04 / 14.04 及后续版本、CentOS 6 / 7、Arch Linux;\n\n\n\n"},"chapter_00/01_versions.html":{"url":"chapter_00/01_versions.html","title":"版本更新历史","body":"更新日志\n2016.06.12 v1.16\n\nTCP 连接重用默认开启;\nDokodemo-door 现在可以识别由 iptables 转发的数据了;\nBlackhole 可配置自动发送 HTTP 形式的拒绝数据;\n\n2016.06.05 v1.15\n\n增加了 TCP 连接重用选项,对于 HTTP 请求的性能有明显的提升;\n支持监听指定的 IP 地址而非全部;\n支持从指定的 IP 地址发出数据;\n修复了 HTTP 代理中一个可能会导致内存耗尽的问题;\n\n2016.05.29 v1.14\n\n修复了 HTTP 代理中一个可能导致崩溃的问题;\n安装脚本中增加了一些功能;\nDNS 中增加了静态路由功能;\n官方服务器地址变动;\n\n2016.05.16 v1.13\n\n内置 DNS 服务,可搭配 chinasites 和 chinaip 进行更为精准的路由判断;\n修复了一个 UDP 转发时的问题;\n\n2016.05.01 v1.12.1\n\n修复了 VMess 协议中的一个 bug。\n\n2016.05.01 v1.12\n\n再次尝试修复内存使用问题;\n提升了 Shadowsocks 的性能;\nloglevel 增加了新的选项“none”表示不记录任何 log;\n\n2016.04.18 v1.11\n\n尝试修复内存使用问题。\n\n2016.03.07 v1.10\n\n修复了动态端口刷新时的性能问题。\n\n2016.02.29 v1.9.1\n\n修复了 Shadowsocks 中 OTA 的问题。\n\n2016.02.29 v1.9\n\nShadowsocks 支持了 Chacha20 加密方式;\n默认配置文件增加了更多的直连网站;\n动态端口中现已可以自动创建帐号,无需事先指定;\n\n2016.02.22 v1.8\n\n更新了安装脚本 install-release.sh (感谢 netcookies@):\n现在可以自动停止 V2Ray 进程,并在更新完成后自动运行 V2Ray;\ninstall-release.sh 接受 --proxy 参数并从指定的代理下载 V2Ray;\n\n\n使用 Go 1.6 编译,提升了 AES 加密的性能;\n一些小修小补;\n官方服务器 IP 更新,请重新下载安装包以获得最新的配置。\n\n2016.02.08 v1.7\n\n提升了 UDP 转发的性能;\n提升了 Shadowsocks 的安全性;\n修复了一些问题;\n祝大家新年快乐!\n\n2016.02.01 v1.6\n\n服务器端支持 Shadowsocks;\n协议详情\n配置示例\n\n\n\n2016.01.25 v1.5\n\n修复了一个 VMess 中的安全性问题,导致了 1.5 和之前版本不兼容,请同时升级你的客户端和服务器端;\n修复了一个路由不能正常工作的问题; \n动态端口;\n略微提升了性能;\n\n2016.01.18 v1.4\n\n更新了安装脚本,在 Debian / Ubuntu / CentOS 7 中可自动安装和更新 V2Ray;\n\n修复了一个 VMess 的内存使用问题;\n\n\n2016.01.11 v1.3\n\nWiki 中更新了一些英语页面(感谢 chenxiaoqino);\nDocker 配置文件(感谢 adoot);\nHTTP 代理(感谢 adoot);\n路由中内置了常见的国内网站域名;\nVMess 配置中新增了 alterId 选项;\n修复了若干小问题;\n\n2015.12.14 v1.2\n\n简洁且高效的国内 IP 路由;\n错误日志可写入文件;\n路由中支持正则表达式方式的域名匹配;\n修复了一个 SOCKS 协议的兼容性 bug;\n\n2015.12.07 v1.1\n\n修复了一个 VMess 协议的 bug,也导致了 1.1 和 1.0 的应用程序不兼容,配置文件不受影响;\n修复了一个 InboundDetourHandler 中的 bug;\n\n2015.11.30 v1.0\nV2Ray 1.0 正式版,包含以下功能:\n\nSocks 4 / 5 代理协议;\n可以防止重放攻击的高速中继协议;\n静态路由功能,用户可选择性屏蔽或代理指定的 IP 段或域名;\n\n"},"chapter_00/02_donate.html":{"url":"chapter_00/02_donate.html","title":"捐助 V2Ray","body":"资助 V2Ray 发展\nV2Ray 是一个非营利项目,它的所有代码均公开,软件可以自由使用,不受限制。如果您喜爱本项目,可以通过下面的方式请作者喝一杯咖啡。\n资助方式\nV2Ray 支持以下资助方式,收到捐赠之后您的昵称将会显示在页面下方。更改昵称请联系 [email protected] 。\n礼品卡\n请发送 Amazon Gift Card 编码至 [email protected]\n\n从美亚官网购买,支持各种信用卡;\n从 Gyft.com 购买,支持信用卡、Paypal、比特币;\n从淘宝购买;\n\n比特币\n1wYbCx61yyyCRBqV91NnfZfDEmc8doqSx\n感谢您的帮助\n\n\n\n时间\n 昵称\n 金额\n备注\n\n\n\n\n2016.04.21\n Ch*** Q***\n$10\n\n\n\n2016.03.31\n xy****[email protected]\n$50\n\n\n\n2016.02.26\n Ke*****uo\n$5\n\n\n\n2016.02.24\n ji********[email protected]\n$1\n\n\n\n2016.02.22\n ge****[email protected]\n$0.9\n\n\n\n2016.02.17\n v******[email protected]\n$4166.10\nBTC 9.972\n\n\n2016.02.12\n Han***ft\n$19.89\n \n\n\n2016.01.26\n zw*****oo\n $18\n \n\n\n2015.11.11\n M**莫\n $25\n \n\n\n2015.10.17\n Penn G******\n $25\n \n\n\n2015.10.02\n a*****u\n $25\n \n\n\n2015.09.30\n s*******@gmail.com\n $10\n \n\n\n\n\n"},"chapter_00/pgp.html":{"url":"chapter_00/pgp.html","title":"Entryped Communication","body":"Encrypted Communication\nIf you'd like to contact V2Ray team securely, please considering using the PGP public key below.\n-----BEGIN PGP PUBLIC KEY BLOCK-----\nComment: GPGTools - https://gpgtools.org\n\nmQINBFaPeDABEADAbh3mk58UbKKWndztFKchtTRzU2xFWWRHTdYaNv7Eoo06wrxu\n3eglp0vn+16DIfru4H62TQMS/XSvxib90c4c1tQ4FndVSzv896/IplLKzdrtgn85\nc9eEX4V5b/tKKUmyrG593A/oDdsrpwaIgbNJdzbfqh7WLYESAevRkFJmBZMgfObs\n0pVO/dX6TqS8iV/ARDPbPAzuLosTWXkrRi2+JQmEOKePLsdypRMV9bcgymDA8N6w\nEyGzHyZ2I4wAALtjHXipWFYSZ/4ZK9q9H8G0XV/pk9Y4OFLPGR7T3VCtMwVMhGZk\nCgtcwGOUoE68a/bb9P4FowONnM7tqjM5ef30qNbwe8dMY5DvThffEqQ70LnNc9sj\nOpJF6njxV9ktjjLa3imAB5AStfwX1mBTkQTwnlqAU4pVFcMD6/z+kRFTZGP9nbcY\ncxu5Fg1VVBHHbpgWS39uiwzIBSWVfZj2iHOPcJd9SCZW5xvClcVb1KsU9UD+D88m\nuWBp3TUmxf0f53Uo7Flka1a7MyAEhfcorYsaRioqtPxTZ1z7oYbPLRqLbwmln/YV\nva8XIINQ0hI5phz9kly76ksUqYSz1DRe924/1BwLMs1VzeayB81tOctYd3I7I0aF\n5bF+RLWk0mvYgDBhw/be03PMn17OAkmR6IKNsFcowByNiNaVCLqoE8YVqQARAQAB\ntCFWaWN0b3JpYSBSYXltb25kIDxsb3ZlQHYycmF5LmNvbT6JAj0EEwEKACcFAlaP\neDACGwMFCQeGH4AFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQV4XalIxIroqu\nORAAoZNV6LVaDIxjJgH7BFh0oDNEa7Qac+INxkqd62cAmN3vAEF0PlwUhcz80twY\nWvSPMwiLg85wdg/TzM8Ps8umWT6d9rhpkWnlZWyRFYJBpxn6vOpg0OHsgZpJ2+IM\niREmjK4sYFvuJjGi9e/BT0Mh2+ObcJejwd/+w5vhKb5seva+hw9Fyq569Y2+KMWG\n1M29n3c7NZ6+abYuynxjGdHKOzaTUEGfjrGLZqROD7gb+xtXhBjqKr6jnYlZBAo5\niEAgnnzbiuDoa6Au+PosB2XZQ+rkecu/3AvmTYZ3wcEJt3FC4Gf9jY2A16ypmArm\nak2cmLAlz9CIXllFHjqvAHF68UCx2ptxzG3MoWhDFqws09zKSpwLcLdiAWbw//MM\notzeekx3+b+fjMUa4Eyjg5CvBN0wv2IbEjti744b3HWXW9yOIDrsTrMd8iixfjAe\n3rt9egqTJkLlE8e57Rqnd3E8GpM6LWx8uYXo1aSFxayjJvf+Rvb4VzDA0DHElD2Q\ndRVXJ/mhd14RHDc2QtERcF69GZZ79GFLcTMcXXBlQMDsY0vwBJ56Gi/IGImz9JpT\nswSlU05VSdosMcr01niYoA9BEQjm9Smgd/1b+8qZEAIfvad+SabIRiDacOpN3xSh\nSZzLzIkPukbEp+5hzXt7x22w9M+D6W0Oo22hS8zfV1ZavUa5Ag0EVo94MAEQANoc\ntlwqgv2T372ucpnalh6js8Y/0KkpaevFK6pguZMP6frLX1J05mt+YRUp2UADeqGt\nkuGEiXFZ5cr+smngF0l0HbRkflnILV7wd1WJJmQnvtAbfJfO+tovawUhQH19dLkB\n8KMULcgs0Hrf7QLwus6zs9q0ASu/KkDuQj9gruwWfxk4W5MOQZohk0JcJAZAaBy/\nojKxz/91YjP3JEEzZuLqLiOz4RK38UBi96u5NEkqrmwCe6SAtpCHsa0dpj6LYZ1y\n1ITmYSUnRwgol/UTRNySkZ2PozX6YFXrdZYtuWir0VClw50tFFkIOCaoT3Q5FpCO\nSSS8smLjT9AAr8U3OZNTfNCQtFSNo8FUBYhXmMgskRC7oeV+t6LJ3rdJxgdaFcA+\nGWL4srMedqxmbmW+8CYGIImmurjTy+C9zAtH88NFMYDnG312IIo9Cse3LnYl7eO/\nKBd3YNvCL096Yqd4B/31fFy74/HaGEfNH7jwLvaY4moRdTff4kBERj7u39UE/jG/\nb4NXmnezUZ55qkYQahoPkUIMzF0tn5bOIh1DOg55Wu/ZYe7DQJVE9L6te6KTxALy\nycD4WtQaP58SZpxHhGzEjEicPsPE1PpyRoW+Dl8lL+ppMbCl9zAV++BjkNeL5xZN\ndsCtx/jbh+44X9VtK3G+2sdfdC6TqRbW/lELc8P7ABEBAAGJAiUEGAEKAA8FAlaP\neDACGwwFCQeGH4AACgkQV4XalIxIrorw8RAAg4L9/s8eg90qhslfPjWzvMyi7RvV\n9erHwMB1utxjFDHKknTds2CvnS5JzjpjiT4BT8ICD9cetSP3d7WRNT/XmveeJXjB\nTCxmswrT4H451qsGsCg9eiKIV2is/GolHLnKAvEHICRGsFeCRSB2rNkgWSQ/YJIt\n6vLP1SvwTNY/Y8tyChSbCDaUpvmn4sYf6Qop1Svmn299+22ZVUBp20szsNw233SJ\nIZL0WxSdrMqTdVsZ70m6VEOjOSa15yLryZrwN9U7qbpe2MmuygI90TVGQK4nLZG+\n2XH2YVtBNTl9ZiFdpwq8d7+eMGcStKYQcdy6IZDd3cOeb2sTMUG31HJS3efTmSrT\ntZpOz8TDeNjami78zR5qcW1VmGYbxlZHEhQnpG3U4qWRUZsy5TOYIXKHqCNc3rYH\niixcKE3UcyHBF7XjdKgpKtsgZfKoDXFz3XATJEeW80GEG05GVMoD9Yvf96Q7lvC6\nU83vL8mHNjuG60KvBk7A9grYaVFioqRvbTdPf41G+tJpYKrHSJXPGglxHnzvBfiD\nWWJIBRTyaCCglZLZ/a1sCsT1DciDWQoqqH7DuK2YvMXG3IDaOfoKAE/uW31azT0B\nX7R92mxQ+gCZgePwG4gOE/xAqHZh84VzdWZJ4cehPgHa/z/enqbQbiQAwTXld4Wt\nPeRpd1GUXXeoGCw=\n=To5T\n-----END PGP PUBLIC KEY BLOCK-----\n"},"chapter_00/faq.html":{"url":"chapter_00/faq.html","title":"常见问题","body":"常见问题\n制作 V2Ray 的目的是什么?\n对于已公开的合法信息,人民有自由获取的权力。同时,人民也有言论自由的权力。\n是否反对管制?\n不反对管制。事实上任何事物都需要管制,以减少大众的生活成本,比如奶粉。但监管需要有法可依、有据可循。民众都认可的监管方式也是合理的,可接受的。\nV2Ray 由谁主导开发?\n我们是一群爱好自由的人们。由于政策压力,我们倾向于保持匿名,尽可能地不透露任何身份信息。\nV2Ray 是免费的吗?\n核心代码以及官方客户端将永久免费,之后会考虑提供收费的附加服务。\n"},"chapter_01/":{"url":"chapter_01/","title":"新手入门","body":"新手入门\n本章节介绍了 V2Ray 的基本使用方法。\n"},"chapter_01/workflow.html":{"url":"chapter_01/workflow.html","title":"工作机制","body":"工作机制\n个人使用\n你需要至少两个 V2Ray Server(设为 A、B)才可以正常穿墙。以网页浏览为例,你的浏览器和 A 以 Socks 5 协议通信,\nB 和目标网站之间以 HTTP 协议通信,A 和 B 之间使用 V2Ray 的自有协议 VMess 通信,如下图:\n\n通常 Server A 运行在你自己的电脑,Server B 运行在一台海外的 VPS 中。\n上述的架构是一个简单的客户端 / 服务器架构。Server A 充当客户端,用于加密并发送网络请求;Server B 充当服务器,用于解密并响应网络请求。\n注意:V2Ray 使用时间戳进行身份验证,请确保客户端和服务器的 UTC 时间相差不超过两分钟(时区不限)。\n多人共享\nV2Ray 也可被部署成多服务器模式……(未完待续)\n"},"chapter_01/install.html":{"url":"chapter_01/install.html","title":"下载安装","body":"下载安装\nV2Ray 对于常见操作系统发布了一系列的预编译程序,直接下载即可使用,无须从源代码重新编译。预编译程序发布于 Release 中,每周更新。\n支持的平台如下:\n\nWindows: Vista 及之后版本,32 位和 64 位;\nMac OS X: 10.7 (Lion) 及之后版本,64位;\nLinux:Kernel 2.6.23 及之后版本,如 Debian 7+, Ubuntu 12.04+,CentOS 6+ 等。\n\nWindows / Mac OS X\n下载上述的发行包,解压即可使用。\nLinux\nV2Ray 提供了一个安装脚本用于在 Linux 环境的安装和配置。这个脚本会自动检测有没有安装过 V2Ray,如果没有,则进行完整的配置;如果之前安装过 V2Ray,则只更新 V2Ray 二进制程序而不更新配置。\n以下指令假设已在 su 环境下,如果不是,请先运行 sudo su。\n运行下面的指令下载并安装 V2Ray。当 yum 或 apt-get 可用的情况下,此脚本会自动安装 unzip 和 daemon。这两个组件是安装 V2Ray 的必要组件。如果你使用的系统不支持 yum 或 apt-get,请自行安装 unzip 和 daemon\nbash <(curl -L -s https://raw.githubusercontent.com/v2ray/v2ray-core/master/release/install-release.sh)\n\n此脚本会自动安装以下文件:\n\n/usr/bin/v2ray/v2ray:V2Ray 程序;\n/etc/v2ray/config.json:配置文件;\n\n此脚本会配置自动运行脚本。自动运行脚本会在系统重启之后,自动运行 V2Ray。目前自动运行脚本只支持带有 Systemd 的系统,以及 Debian / Ubuntu 全系列。\n脚本运行完成后,你需要:\n\n编辑 /etc/v2ray/config.json 文件来配置你需要的代理方式;\n运行 service v2ray start 来启动 V2Ray 进程;\n之后可以使用 service v2ray start|stop|status|reload|restart|force-reload 控制 V2Ray 的运行。\n\ninstall-release.sh 参数\ninstall-release.sh 支持如下参数,可在手动安装时根据实际情况调整:\n\n-p 或 --proxy: 使用代理服务器来下载 V2Ray 的文件,格式与 curl 接受的参数一致,比如 socks5://127.0.0.1:1080 或 http://127.0.0.1:3128。\n-f 或 --force: 强制安装。在默认情况下,如果当前系统中已有最新版本的 V2Ray,install-release.sh 会在检测之后就退出。如果需要强制重装一遍,则需要指定该参数。\n--version: 指定需要安装的版本,比如 v1.13。默认值为最新版本。\n--local: 使用一个本地文件进行安装。如果你已经下载了某个版本的 V2Ray,则可通过这个参数指定一个文件路径来进行安装。\n\n用例\n\n使用地址为 127.0.0.1:1080 的 SOCKS 代理下载并安装最新版本:./install-release.sh -p socks5://127.0.0.1:1080\n安装本地的 v1.13 版本:./install-release.sh --version v1.13 --local /path/to/v2ray.zip\n\n"},"chapter_01/client.html":{"url":"chapter_01/client.html","title":"客户端配置","body":"客户端配置\n本文仅描述 Windows 和 Mac OS X 中的 V2Ray 客户端配置,如果你在 Linux 桌面系统上使用 V2Ray,请参考 服务器配置。\n下载程序文件\n根据下载安装中的步骤下载 V2Ray 的程序文件。文件是一个 zip 压缩包,解压即可使用,无需安装。\n解压后可以看到两个文件:\n\n程序文件:v2ray.exe (Windows) / v2ray (Mac OS X)\n配置文件:config.json\n\n运行\n\n在 Windows 中直接双击 v2ray.exe 即可;\n在 Mac OS X 中,右键单击 v2ray 文件,选择“Open With” -> “Terminal.app”\n\n修改配置文件\n如果你想使用自己的 VPS 或者第三方的服务,可以参考常用配置来修改配置文件。\n注意事项\n\nV2Ray 的用户验证基于时间,请确保 A 和 B 所在机器的系统时间误差在一分钟以内。\njson 配置文件实际上不支持注释(即“//”之后的部分,在使用时请务必删去)。\n\n测试服务器可用性\ncurl -v --socks5-hostname 127.0.0.1:1080 https://www.google.com/\n调试\n使用过程中遇到任何问题,请参考常见错误信息。\n"},"chapter_01/server.html":{"url":"chapter_01/server.html","title":"服务器配置","body":"服务器配置\n本文仅描述 Linux 中的 V2Ray 服务器配置,如果你在 Windows 和 Mac OS X 桌面系统上使用 V2Ray,请参考 客户端配置。\n下载程序文件\n根据下载安装中的步骤下载 V2Ray 的程序文件。直接下载的话,文件是一个 zip 压缩包。\n解压后可以看到三个文件:\n\n程序文件:v2ray\n配置文件:vpoint_socks_vmess.json 和 vpoint_vmess_freedom.json\n\n如果通过脚本安装,v2ray 会被复制到 /usr/bin/v2ray/ 目录下,vpoint_vmess_freedom.json 会被复制到 /etc/v2ray/ 目录下并命名为 config.json。\n运行\n\n手动运行:/usr/bin/v2ray/v2ray --config=/etc/v2ray/config.json\n自动运行:安装脚本会以 systemv 或是 systemd 的形式设置开机自动运行。\n\n修改配置文件\n如果你想使用自己的 VPS 或者第三方的服务,可以参考常用配置来修改配置文件。\n调试\n使用过程中遇到任何问题,请参考常见错误信息。\n"},"chapter_01/flags.html":{"url":"chapter_01/flags.html","title":"命令行参数","body":"命令行参数\nV2Ray 的程序文件的命令行参数如下:\nv2ray [--version] [--test] [--config=config.json]\n其中:\n--version 只输出当前版本然后退出,不运行 V2Ray 主程序。\n--test 测试配置文件有效性,如果有问题则输出错误信息,不运行 V2Ray 主程序。\n--config 配置文件位置,默认值是 config.json。\n"},"chapter_01/errors.html":{"url":"chapter_01/errors.html","title":"常见错误信息","body":"常见错误信息\nVMess 认证失败\n错误信息\n\nInvalid authentication\nVMessOut: Failed to read VMess response (0 bytes): EOF\nVMessOut: Failed to read VMess response (0 bytes): wsarecv: An existing connection was forcibly closed by the remote host.\n\n原因\n\n客户端和服务器端的用户 ID 不匹配;\n客户端和服务器端的用户 alterId 不匹配;\n客户端与服务器的时间不匹配,误差不能超过两分钟;\n偶然因素,可忽略;\n\nShadowsocks 认证失败\n错误信息\nShadowsocks: Unknown address type: xxx\n原因\n\nShadowsocks 协议的加密方式或是密码不匹配;\n\n"},"chapter_01/issue.html":{"url":"chapter_01/issue.html","title":"Issue 指引","body":"Issue 指引\n在报告问题之前请先阅读下面的内容,以提高问题的质量和解决效率。\n语言\nV2Ray 团队支持中文和英文,请选择你所熟悉的语言来提问,以避免一些不必要的误会。管理员会以问题发起者使用的语言来回复;如果提问者使用了其它的语言,则以英文回复。\n渠道\n所有官方认可的聊天室和群组都可以用于汇报问题,包括 Github 的 Issue。由于工作量的原因,不同的渠道有响应速度不同。优先级如下:\n\nGithub Issue;\nGitter 聊天室\nTelegram 群组\n其它\n\n问题的组织\n问题的内容请包含下面几个方面,以方便重现:\n\n问题描述:任何的错误信息,不正常的行为等\n操作系统:如 Windows 10,Ubuntu 14.04 等,64 位 / 32 位\nV2Ray 版本:版本号或源码同步日期\nGolang 版本:如果有的话\n日志文件:如果有的话\n上下文:之前运行过什么命令/程序,安装过什么其它软件等\nJournal:如果你使用 Systemd,可以使用 journalctl -u v2ray 命令来获得最近的 V2Ray panic 的信息\n\n其中问题描述请尽量精确,请勿包含任何有歧义的形容词。\n一些有效的提问举例:\n\n#138\n#132\n\n以下不清晰的提问将被直接忽略:\n\n“V2Ray 占用内存很大”\n请说明具体数值;\n\n\n“这几天速度似乎慢了”\n请说明之前有多快,现在有多慢,这几天发生了什么,等等;\n\n\n\nGithub Issue 分类\nBug\n代码的质量问题,可以是功能性(Functionality),稳定性(Reliability)或者性能(Performance)。\n请在一个 Issue 中只描述一个问题,如果你遇到多个问题,请分别创建不同的 Issue,以方便讨论和解决。如果合在一起发,将有很高的机率被标记为 Chat 而降低解决问题的优先级。\nChat\n聊天或其它相关性不强的内容。标记为 Chat 的 Issue 将在最后回复 7 天后关闭。\nEnhancement\n有关新特性的建议,如果是针对现有代码的修改,请详细描述您的建议。\nDuplicate\n此 Issue 与之前的某一个 Issue 重复。\nHelp Wanted\n标记为 Help Wanted 的 Issue 接受 Pull Request,一般为新特性的实现,如果您对其中某一个感兴趣,欢迎供献代码。\nInvalid\n无法重现的 Bug 或没有意义的 Issue。\nWon't fix\n此 Issue 是一个合理的问题,但不影响软件的正常使用,故不修复。\n"},"chapter_01/hardware.html":{"url":"chapter_01/hardware.html","title":"硬件要求","body":"硬件要求\nCPU\n\nX86: 最低单核,推荐 64 位双核\nARM: 最低 ARMv6 单核,推荐双核\n\n内存\n至少 64MB 空闲内存,推荐 128MB 或更多。Golang 程序在运行中会申请巨额的虚拟内存(VIRT),这部分内存不会记入实际的内存使用中,但虚拟机宿主不能限制 VIRT。据说 openvz 对此不太友好。\n硬盘\nV2Ray 会在硬盘上存放运行所需的二进制文件和配置文件,以及运行过程中所产生的日志文件。前者的大小在 10M 以下,而日志文件会在运行期间不断增长,最终会塞满整个硬盘。正常使用的情况下,一周产生的日志文件不会超过 10M。\n网络\nV2Ray 会尽可能地使用所有的带宽,以提升传输速度。需要注意的是,用于转发数据的主机所接收和发送的流量是对称的。也就是说,看了一部 10G 的电影,主机会消耗 20G 的流量,而在传输过程中,主机的带宽也只能以一半来计算。\n"},"chapter_02/":{"url":"chapter_02/","title":"配置文件","body":"配置文件\n本章节介绍了配置文件的详细介绍。\n"},"chapter_02/00_json.html":{"url":"chapter_02/00_json.html","title":"JSON","body":"JSON 格式\nV2Ray 的配置文件为 JSON 格式,如果你已经熟悉 JSON 格式,可以跳过这一段。\nJSON,全称 JavaScript Object Notation,简而言之是 Javascript \n中的对象(Object)。一个 JSON 文件包含一个完整的对象,以大括号“{”开头,大括号“}”结束。\n一个 JSON 对象包含一系列的键值对(Key-Value Pair),一个键是一个字符串(String),而值有多种类型,常\n见的有字符串(String)、数字(Number)、布尔(Bool)、数组(Array)和对象(Object)。下面是一个 JSON\n对象示例:\n{\n "stringValue": "This is a string.",\n "numberValue": 42,\n "boolValue": true,\n "arrayValue": ["this", "is", "a", "string", "array"],\n "objectValue": {\n "another": "object"\n }\n}\n\n需要注意的是:\n\n通常一个键值对的后面需要有一个逗号“,”,但如果这个键值对后面紧跟一个大括号“}”的话,则一定不能有逗号。\nJavascript 中的注释符“//”和“/* */”不能在 JSON 文件中使用。\n\n"},"chapter_02/01_overview.html":{"url":"chapter_02/01_overview.html","title":"文件格式","body":"配置文件格式\nV2Ray 的配置文件形式如下,客户端和服务器通用一种形式,只是实际的配置不一样。\n{\n "log": {},\n "dns": {},\n "routing": {},\n "inbound": {},\n "outbound": {},\n "inboundDetour": {},\n "outboundDetour": {},\n "transport": {}\n}\n\n其中:\n\nport: V2Ray 进程的主端口,它的取值是一个正整数,可以根据实际情况选取;\nlog: 日志配置,见下文;\ndns: DNS 配置,见下文;\nrouting: 路由配置,见下文;\ninbound: 传入连接配置,见下文;\noutbound: 传出连接配置,见下文;\ninboundDetour: 额外的传入连接配置,见下文;\noutboundDetour: 额外的传出连接配置,见下文;\ntransport: 底层传输配置,见下文。\n\n日志配置(log)\n{\n "access": "文件地址",\n "error": "文件地址",\n "loglevel": "warning"\n}\n\n其中:\n\naccess: 访问日志的文件地址,其值可以是:\n一个合法的文件地址,如 /tmp/v2ray_access.log (Linux)或者 C:\\Temp\\v2ray_access.log(Windows);\n或者留空表示不记录访问日志。\n\n\nerror: 错误日志的文件地址,其值可以是:\n一个合法的文件地址,如 /tmp/v2ray_error.log (Linux)或者 C:\\Temp\\v2ray_error.log(Windows);\n或者留空表示不记录错误日志。\n\n\nloglevel: 错误日志的级别,可选的值为 debug、info、warning、error 和 none:\n其中 debug 记录的数据最多,error 记录的最少;\nnone 表示不记录任何内容 (V2Ray 1.13+);\n默认值为 warning。\n\n\n\nDNS 配置(dns)\n内置的 DNS 服务器,若此项不存在,则默认使用本机的 DNS 设置。详见DNS 配置\n路由配置(routing)\n{\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "domain": [\n "baidu.com",\n "qq.com"\n ],\n "outboundTag": "direct"\n },\n {\n "type": "field",\n "ip": "0.0.0.0/8",\n "outboundTag": "direct"\n },\n {\n "type": "field",\n "network": "udp",\n "outboundTag": "blocked"\n }\n ]\n }\n}\n\n其中:\n\nstrategy: 路由模式,目前只有"rules"一个值;\nsettings: 具体内容详见路由配置;\n\n主传入连接配置(inbound)\n传入连接用于接收从客户端(浏览器或上一级代理服务器)发来的数据,可用的协议请见[[协议列表]]。\n{\n "port": 1080,\n "listen": "127.0.0.1",\n "protocol": "协议名称",\n "settings": {}\n}\n\n其中:\n\nport: 端口\nlisten: 监听地址,只允许 IP 地址,默认值为 0.0.0.0。\nprotocol: 连接协议名称,可选的值见协议列表。\nsettings: 具体的配置内容,视协议不同而不同。\n\n主传出连接配置(outbound)\n主传出连接用于向远程网站或下一级代理服务器发送数据,可用的协议请见[[协议列表]]。\n{\n "sendThrough": "0.0.0.0",\n "protocol": "协议名称",\n "settings": {}\n}\n\n其中:\n\nsendThrough: 用于发送数据的 IP 地址,当主机有多个 IP 地址时有效,默认值为 0.0.0.0。\nprotocol: 连接协议名称,可选的值见协议列表。\nsettings: 具体的配置内容,视协议不同而不同。\n\n额外的传入连接配置(inbound detour)\n此项是一个数组,可包含多个连接配置,每一个配置形如:\n{\n "protocol": "协议名称",\n "port": "端口",\n "tag": "标识",\n "allocate": {\n "strategy": "always",\n "refresh": 5,\n "concurrency": 3\n },\n "settings": {}\n}\n\n其中:\n\nprotocol: 连接协议名称,可选的值见协议列表。\nport: 端口号,可以是一个数值,或者字符串形式的数值范围,比如 "5-10" 表示端口 5 到端口 10 这 6 个端口。\ntag (V2Ray 1.5+): 此传入连接的标识,用于在其它的配置中定位此连接。属性值必须在所有 tag 中唯一。\nallocate (V2Ray 1.5+): 分配设置:\nstrategy: 分配策略,可选的值有 always 和 random 两个。always 表示总是分配所有已指定的端口,port 是指定了多少个端口,V2Ray 就会监听这些端口。random 表示随机开放端口,每隔 refresh 分钟在 port 范围中随机选取 concurrency 个端口来监听。\nrefresh: 随机端口刷新间隔,单位为分钟。最小值为 2,建议值为 5。这个属性仅当 strategy = random 时有效。\nconcurrency: 随机端口数量。最小值为 1,最大值为 port 范围的一半。建议值为 3。\n\n\nsettings: 具体的配置内容,视协议不同而不同。\n\n额外的传出连接配置(outbound detour)\n此项是一个数组,可包含多个连接配置,每一个配置形如:\n{\n "protocol": "协议名称",\n "tag": "标识",\n "settings": {}\n}\n\n其中:\n\nprotocol: 连接协议名称,可选的值见协议列表;\ntag: 当前的配置标识,当路由选择了此标识后,数据包会由此连接发出;\nsettings: 具体的配置内容,视协议不同而不同。\n\n底层传输配置(transport)\n用于配置 V2Ray 如何与其它服务器建立和使用网络连接。\n{\n "connectionReuse": true\n}\n\n其中:\n\nconnectionReuse: 是否重用 TCP 连接,默认值为 true。\n目前只对 VMess 起作用;\n当值为 true 时,V2Ray 会在传输完一段数据之后,继续使用同一个 TCP 连接来传输下一段数据。\n\n\n\n"},"chapter_02/02_protocols.html":{"url":"chapter_02/02_protocols.html","title":"协议列表","body":"V2Ray 协议列表\nV2Ray 支持以下协议:\n\nBlackhole\nDokodemo-door\nFreedom\nHTTP\nShadowsocks\nSocks\nVMess\n\n"},"chapter_02/protocols/blackhole.html":{"url":"chapter_02/protocols/blackhole.html","title":"Blackhole","body":"Blackhole\nBlackhole(黑洞)是一个传出数据协议,它会阻碍所有数据的传出,配合路由(Routing)一起使用,可以达到禁止访问某些网站的效果。\n\n名称:blackhole\n类型:Outbound\n配置:\n\n{\n "response": {\n "type": "none"\n }\n}\n\n其中:\n\nresponse (V2Ray 1.16+): 配置黑洞的响应数据。Blackhole 会在收到待转发数据之后,发送下面的响应数据(如果有的话),然后关闭连接。待转发的数据将被丢弃。\ntype: 数据类型,可选的值有:\n"none": 默认值,不返回任何数据直接关闭连接;\n"http": 返回一个简单的 HTTP 403 响应;\n\n\n\n\n\n"},"chapter_02/protocols/dokodemo.html":{"url":"chapter_02/protocols/dokodemo.html","title":"Dokodemo","body":"Dokodemo-door\nDokodemo door(任意门)是一个传入数据协议,它可以监听一个本地端口,并把所有进入此端口的数据发送至指定服务器的一个端口,从而达到端口映射的效果。\n\n名称:dokodemo-door\n类型:Inbound\n配置:{\n"address": "8.8.8.8",\n"port": 53,\n"network": "tcp",\n"timeout": 0,\n"followRedirect": false\n}\n\n\n\n其中:\n\naddress: 指定服务器的地址,可以是一个 IPv4、IPv6 或者域名,字符串类型。\n当 followRedirect(见下文)为 true 时,address 可为空。\n\n\nport: 指定服务器的端口,数值类型。\nnetwork: 指定服务器的网络协议类型,可选值为“tcp”或“udp”。\ntimeout: 传入数据的时间限制(秒),0 表示无限制。\nfollowRedirect (V2Ray 1.16+): 当值为 true 时,dokodemo-door 会识别出由 iptables 转发而来的数据,并转发到相应的目标地址。\n目前只支持 Linux。\n目前只支持 TCP/IPv4 连接。\n\n\n\n"},"chapter_02/protocols/freedom.html":{"url":"chapter_02/protocols/freedom.html","title":"Freedom","body":"Freedom\nFreedom 是一个传出数据协议,可以用来向任意网络发送(正常的) TCP 或 UDP 数据。\n\n名称:freedom\n类型:Outbound\n配置:\n\n{\n "domainStrategy": "AsIs",\n "timeout": 0\n}\n\n其中:\n\ndomainStrategy: 域名解析策略,可选的值有:\nAsIs: 默认值。不作更改,由操作系统解析。\nUseIP: 使用 V2Ray 的 DNS 服务器解析成 IP 之后再发送数据。\n\n\ntimeout (V2Ray 1.15+): 从目标服务器读取响应数据的时限,单位为秒,0 表示不限时。默认值为 0。\n\n"},"chapter_02/protocols/http.html":{"url":"chapter_02/protocols/http.html","title":"HTTP","body":"HTTP\nHTTP 是一个传入数据协议,兼容 HTTP 1.x 代理。\n\n名称:http\n类型:Inbound\n配置:空\n\n"},"chapter_02/protocols/shadowsocks.html":{"url":"chapter_02/protocols/shadowsocks.html","title":"Shadowsocks","body":"Shadowsocks\n兼容原版 Shadowsocks 协议。此协议是一个传入协议,只适用于服务器端。客户端版本请使用 Shadowsocks 官方推荐的工具。\n与官方版本的兼容性:\n\n支持 TCP 和 UDP 数据包转发,其中 UDP 可选择性关闭;\n支持 OTA,如果客户端发来的数据包指定了 OTA,服务器端会自动验证 OTA,无需配置;\n加密方式:\naes-256-cfb\naes-128-cfb\nchacha20\nchacha20-ietf\n\n\n\n协议描述:\n\n名称:shadowsocks\n类型:Inbound\n配置:{\n"method": "加密方式",\n"password": "密码",\n"udp": false,\n"level": 0\n}\n\n\n\n其中:\n\nmethod: 加密方式,没有默认值。可选的值有:\naes-256-cfb\naes-128-cfb\nchacha20\nchacha20-ietf\n\n\npassword: 密码,任意字符串。Shadowsocks 协议并不限制密码长度,但短密码会更可能被破解,建议使用 16 字符或更长的密码。\nudp: true / false,是否开启 UDP 转发,默认值为 false。\nlevel: 用户等级,默认值为 0。如果是自用的 VPS,可以设成 1。详见 VMess 中的 level 选项。\n\n"},"chapter_02/protocols/socks.html":{"url":"chapter_02/protocols/socks.html","title":"SOCKS","body":"Socks\nSocks 是一个传入数据协议,兼容 Socks 4 和 Socks 5,暂不支持 Socks 4a。\n\n名称:socks\n类型:Inbound\n配置:{\n"auth": "noauth",\n"accounts": [ // 当 auth 为 "password" 时有效\n {\n "user": "my-username",\n "pass": "my-password"\n }\n],\n"udp": false,\n"ip": "127.0.0.1",\n"timeout": 0\n}\n\n其中:\nauth: Socks 协议的认证方式,支持"noauth"匿名方式和"password"用户密码方式。默认值为"noauth"。\nacounts: 一个数组,数组中每个元素为一个用户帐号,用户名由"user"指定,密码由"pass"指定。默认值为空。\nudp: 是否开启 UDP 协议的支持,true / false。默认值为 false。\nip: 当开启 UDP 时,V2Ray 需要知道本机的 IP 地址。默认值为 127.0.0.1。\ntimeout: 从 Socks 客户端读取数据的超时设置(秒),0 表示不限时。默认值为 0。\n\n"},"chapter_02/protocols/vmess.html":{"url":"chapter_02/protocols/vmess.html","title":"VMess","body":"VMess\nVMess 是一个加密传输协议,它分为传入和传出两部分,通常作为 V2Ray 客户端和服务器之间的桥梁。\n\n名称:vmess\n类型:Inbound / Outbound\nVMess 传出协议配置:{\n"vnext": [\n {\n "address": "127.0.0.1",\n "port": 37192,\n "users": [\n {\n "id": "27848739-7e62-4138-9fd3-098a63964b6b",\n "alterId": 10\n }\n ]\n }\n]\n}\n\n\n\n其中:\n\nvnext:一个数组,包含一系列的服务器配置,其中每一个服务器:\naddress:服务器地址,仅支持 IP 地址。\nport:服务器端口号。\nusers:一组服务器认可的用户,其中每一个用户:\nid:VMess 用户的主 ID。\nalterId: 为了进一步防止被探测,一个用户可以在主 ID 的基础上,再额外生成多个 ID。这里只需要指定额外的 ID 的数量,推荐值为 100。不指定的话,默认值是 0。最大值 65535。这个值必须和服务器端所指定的值相同。\n\n\n\n\n\n\nVMess 传入协议配置:{\n"clients": [\n {\n "id": "27848739-7e62-4138-9fd3-098a63964b6b",\n "level": 0,\n "alterId": 100,\n "email": "[email protected]"\n }\n],\n"default": {\n "level": 0,\n "alterId": 32\n},\n"detour": {\n "to": "tag_to_detour"\n}\n}\n\n\n\n其中:\n\nclients:一组服务器认可的用户。clients 可以为空。当此配置用作动态端口时,V2Ray 会自动创建用户。\n其中每一个用户:\nid:VMess 的用户 ID。\nlevel:用户等级\n当 level 为 0 时,此用户不被信任,V2Ray 将对此用户进行严格的安全限制;\n当 level 大于 0 时,此用户被信任,V2Ray 将放宽对此用户的限制。\n\n\nalterId: 同 Inbound。\nemail: 用户邮箱地址,用于区分不同用户的流量。\n\n\n\n\ndetour: 转向 outboundDetour\nto: 一个 outboundDetour 的 tag,详见配置文件\n\n\ndefault (V2Ray 1.9+): 可选,clients 的默认配置\nlevel: 用户等级,意义同上\nalterId: 同 Inbound。 \n\n\n\n"},"chapter_02/03_routing.html":{"url":"chapter_02/03_routing.html","title":"路由配置","body":"路由功能\nV2Ray 内建了一个简单的路由功能,可以将传入数据按需求由不同的传出连接发出,以达到按需翻墙的目的。这一功能的常见用法是建立一个统一的中转服务器(比如在路由器或者一台国内的 VPS 上),所有的客户端都将数据发往这台服务器,由服务器来选择是否转发至国外的 VPS。这样做的好处是减化了客户端的配置和维护成本,当路由有变化时,不必修改每一个客户端,只需修改中转服务器的配置即可。\n目前路由配置只支持 strategy = "rules",配置格式如下:\n{\n "domainStrategy": "AsIs",\n "rules": [\n {\n "type": "field",\n "domain": [\n "baidu.com",\n "qq.com"\n ],\n "outboundTag": "direct"\n },\n {\n "type": "field",\n "ip": "0.0.0.0/8",\n "outboundTag": "direct"\n },\n {\n "type": "field",\n "network": "udp",\n "outboundTag": "blocked"\n }\n ]\n}\n\n其中:\n\ndomainStrategy (V2Ray 1.13+): 域名解析策略,可选的值有:\n"AsIs": 只使用域名进行路由选择。默认值。\n"IPIfNonMatch": 当域名没有匹配任何规则时,将域名解析成 IP(A 记录)再次进行匹配;\n当一个域名有多个 A 记录时,会尝试匹配所有的 A 记录,直到其中一个与某个规则匹配为止;\n解析后的 IP 仅在路由选择时起作用,转发的数据包中依然使用原始域名;\n\n\n\n\nrules: 对应一个数组,数组中每个一个元素是一个规则。对于每一个 TCP/UDP 连接,路由将根据这些规则依次进行判断,当一个规则生效时,即将这个连接按此规则的设置进行转发。\n\n每一个规则都有两个必须的属性: type 和 outboundTag。type 表示此规则的类型,目前支持的类型有:field、chinaip 和 chinasites;outboundTag 对应一个额外传出连接配置的标识。\n三种类型的详细格式如下:\nfield\n{\n "type": "field",\n "domain": [\n "baidu.com",\n "qq.com"\n ],\n "ip": [\n "0.0.0.0/8",\n "10.0.0.0/8",\n "fc00::/7",\n "fe80::/10"\n ],\n "port": "0-100",\n "network": "tcp",\n "outboundTag": "direct"\n}\n\n其中:\n\ndomain: 一个数组,数组每一项是一个域名的匹配。有两种形式:\n纯字符串: 当此字符串匹配目标域名中任意部分,该规则生效。比如"sina.com"可以匹配"sina.com"、"sina.com.cn"和"www.sina.com",但不匹配"sina.cn"。\n正则表达式: 由"regexp:",余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如"regexp:\\\\.goo.*\\\\.com$"匹配"www.google.com"、"fonts.googleapis.com",但不匹配"google.com"。\n\n\nip:一个数组,数组内每一个元素是一个 CIDR。当某一元素匹配目标 IP 时,此规则生效。\nport:端口范围,有两种形式:\n"a-b": a 和 b 均为正整数,且小于 65536。这个范围是一个前后闭合区间,当目标端口落在此范围内时,此规则生效。\na: a 为正整数,且小于 65536。当目标端口为 a 时,此规则生效。\n\n\nnetwork: 可选的值有"tcp"、"udp"或"tcp,udp",当连接方式是指定的方式时,此规则生效。\n\n一些特殊情况:\n\n当多个属性同时指定时,这些属性需要同时满足,才可以使当前规则生效;\n当一个网络连接指定了域名,而一个规则中只有 IP 规则,没有域名规则,则这个规则永远不会生效,反之亦然。\n\nchinaip\n此规则配置如下,没有额外属性。\n{\n "type": "chinaip",\n "outboundTag": "direct"\n}\n\nchinaip 会匹配所有中国境内的 IP,目前只包含 IPv4 数据。IP 段信息由 ChinaDNS 中给出的脚本生成。\nchinasites\n此规则配置如下,没有额外属性。\n{\n "type": "chinasites",\n "outboundTag": "direct"\n}\n\nchinasites 内置了一些常见的国内网站域名,如果目标域名为这些域名其中之一时,此规则生效。\n"},"chapter_02/04_dns.html":{"url":"chapter_02/04_dns.html","title":"DNS 配置","body":"DNS 服务器\nV2Ray 内置了一个 DNS 服务器,可以将 DNS 查询根据路由设置转发到不同的远程服务器中。\n示例配置:\n{\n "hosts": {\n "baidu.com": "127.0.0.1"\n },\n "servers": [\n "8.8.8.8",\n "8.8.4.4",\n "localhost"\n ]\n}\n\n其中:\n\nhosts (V2Ray 1.14+): 静态 IP 列表,其值为一系列的"域名":"IP",IP 可以是 IPv4 或者 IPv6。在解析域名时,如果域名完整匹配这个列表中的某一项,则解析结果为该项的 IP,而不会使用下述的 servers 进行解析。\nservers: 指定一个 DNS 服务器列表,可选的值如下。如果配置了多个 DNS 服务器,则会按从上到下的优先级顺序进行 DNS 查询。\nIP: 目前只支持传统的端口为 53 的 DNS 服务器;\n"localhost": 这是一个特殊值,表示使用本机预设的 DNS 配置;\n\n\n\n若要使 DNS 服务生效,需要配置路由功能中的 DomainStrategy。\n由此 DNS 服务器所发出的 DNS 查询请求,会自动根据路由配置进行转发,无需额外配置。\n"},"chapter_03/":{"url":"chapter_03/","title":"进阶使用","body":"高级功能\n本章节介绍了 V2Ray 的高级功能。\n"},"chapter_03/00_dynport.html":{"url":"chapter_03/00_dynport.html","title":"动态端口","body":"动态端口\n通常情况下,V2Ray 的服务器端使用一个固定的端口来接收客户端的数据。这个端口由配置文件中的 port 属性指定。如果同一端口通信时间过长,或流量过大,则有可能被服务商限速。于是 V2Ray 提供了一个功能来动态调整通信端口。\n在新的配置中,V2Ray 服务器端依然使用一个主端口(即上文的 port)接收请求,但可以配置一个绕路(detour)的特性。配置之后,服务器会主动告诉客户端,使用一个新的端口 X 来通信,X 是一个范围(可配置)内随机选取的值。此端口的有效期为 Y 分钟,客户端和服务器都会遵守这个时间,到期之后,客户端会继续向服务器请求新的端口来通信。以此循环。\n要启用动态端口,需要在现有的服务器配置文件中进行一些修改,主要有以下两项。客户端配置不用更改,客户端会自动接收服务器的配置。\n一、开启一个动态监听的 inboundDetour:\n{\n "protocol": "vmess",\n "port": "10000-20000", // 端口范围\n "tag": "detour", // 此传入协议的标签,在第二部分中会用到\n "settings": {\n "default": {\n "level": 1,\n "alterId": 32\n }\n },\n "allocate": { // 分配模式\n "strategy": "random", // 随机开启\n "concurrency": 2, // 同时开放两个端口\n "refresh": 5 // 每五分钟刷新一次\n }\n}\n\n上述配置的具体细节可以在配置文件中找到,需要注意的是,1) 如果 VPS 有防火墙的话,整个端口范围要在防火墙中被允许,V2Ray 没有能力操作 VPS 的防火墙;2) 同时开放的端口数最大值是端口范围的一半。\n二、在主传入协议中指定绕路到上述的 inboundDetour:\n"inbound": {\n "protocol": "vmess",\n "settings": {\n "clients": [ // clients 部分和原有配置一样\n {\n "id": "d17a1af7-efa5-42ca-b7e9-6a35282d737f",\n "level": 1,\n "alterId": 10,\n "email": "[email protected]"\n }\n ],\n "features": { // 特性设置\n "detour": { // 绕路设置\n "to": "detour" // 指定绕路协议的标签,要和“一”中的标签一样\n }\n }\n }\n},\n\n配置的具体细节参见协议列表。\n在约定绕路的端口时,服务器会根据当前用户的 Email 地址,在绕路协议中以同一个 Email 地址创建新的用户,以便区分不同用户的流量。若绕路协议中已经配置了同一个 Email 的用户,则使用该用户;否则自动创建一个新用户。\n"},"chapter_03/01_effective.html":{"url":"chapter_03/01_effective.html","title":"Effective V2Ray","body":"Effective V2Ray\n目录\n\n前言\n基础\n工作原理\n底层实现\n\n\nVMess 协议\n加密方式\n认证机制\nAlterId\n\n\n内存使用\nVMess ID 数量\n网络速度\n\n\n\n前言\nV2Ray 作为一个代理协议的平台,提供了丰富的功能和复杂的配置。为了减少对 V2Ray 工作原理的误解,本文给出了一些实用的建议。\n基础\n工作原理\nV2Ray 的工作原理是由一个传入协议(inbound)接收用户数据,分析之后交由一个传出协议(outbound)发出。V2Ray 所支持的任意一个传入协议都可以和任意的一个传出协议配置,以达到不同的功能。你可以配置多个传入协议(inboundDetour),来接收不同格式的数据(如 SOCKS 5 代理和 HTTP 代理)。你也可以配置多个传出协议(outboundDetour),然后使用内置的路由功能来选择由哪一个传出协议发送数据。\n底层实现\nV2Ray 只支持 TCP 和 UDP 协议,任何基于 TCP 或 UDP 的协议都可以通过 V2Ray 进行转发,这包括但不限于 SOCKS、HTTP、DNS 协议等。对于其它类型的 IP 数据的支持,目前不在计划中。对于 VPN 或类似 VPN 的协议,也只会做到转发其中的 TCP 或 UDP 数据。\nVMess 协议\n加密方式\nVMess 默认(并强制)使用 AES-128-CFB 加密。在没有理论证明这种加密方式可以被“轻易”破解之前,我们可以认为它是安全的。这里的“轻易”是指在一个可行的时间内,比如 30 分钟。理论上只要有足够的计算资源,任何加密方式都可以被暴力破解,关键问题是破解成本和所截获内容的价值。如果你访问的网络资源非常重要(比如 email),请在 V2Ray 的基础上使用 HTTPS。\n简单来说 VMess 协议的数据可以分为两部分,头部是 V2Ray 客户端和服务器端沟通的数据,剩下的数据是用户发出的实际数据。这两部分数据被分别加密,所使用的密钥不同。这样做的原因是,1) 减少通讯特征;2) Defense in depth),例如 ShadowSocks协议的弱点分析和改进。\nVMess 服务器端发回的数据所使用的加密密钥,和客户端的请求也不一样,原因同上。\n认证机制\nVMess 的客户端请求的前 16 字节是认证信息,服务器端会根据这 16 字节来判断一个请求是否来自某个预设的用户。如果认证不通过,服务器将不会读取后续的数据,而直接关闭连接。\nVMess 的认证信息是一个根据时间变化哈希值,时间戳的取值是当前时间(UTC)的前后 30 秒内的随机值。在不同的时间点上,哈希算法得出的哈希值均不同。而在 2 分钟之后,这个哈希值就会失效。也就是说,客户端和服务器端的 UTC 时间(时区无所谓)相差不能超过两分钟。\nAlterId\n由于时间戳的取值范围只有 60 个值,当客户端产生大量数据请求时,部分请求可能会使用了相同的时间戳,进而产生相同的认证信息。在这种情况下,通讯数据有可能被模式识别。为了降低可识别性,VMess 配置中有一个 alterId 设置。如果 alterId > 0,VMess 在当前 ID 的基础上自动生成 alterId 个不同的 ID,并用于通讯。alterId 的值越大,认证信息重复的概率就越小。实际的 alterId 值可以根据你的上网情况推算出来,一般的网页浏览平均每秒打开最多一个网页,平均一个网页发起 10 个连接,那么 alterId 的值设为 10 即可。\n也就是说 alterId 实际上是用户 ID 的一部分,如果客户端和服务器所配置的 alterId 值不同,即使 ID 相同,也会导致认证失败。\n内存使用\nV2Ray 的启动内存为 10MB,使用过程中内存没有限制,最高可能把机器的可用内存吃完,然后由于内存不足而崩溃。一般而言,客户端的内存使用相对稳定(30MB 以下),服务器端的用量会高出很多。影响内存使用的因素如下:\nVMess ID 数量\nVMess 服务器端会保留一个认证信息的缓存,用于快速验证用户的有效性。这个缓存的大小和 VMess 的端口数量与每个 VMess 的用户数成正比。一个 VMess 的用户数等于其中每个用户的 alterId 值之和。比如下面的 VMess 配置,包含了 1100 个用户:\n"settings": {\n "clients": [{\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22",\n "alterId": 100\n },\n "clients": [{\n "id": "8f62a287-e80a-441f-9f28-affc9fb6c572",\n "alterId": 1000\n }]\n}\n\n每 1000 个用户将占用 50M 至 150M 内存,不同端口的 VMess 协议不会共享用户,即使它们的 ID 是一样的。\n网络速度\n由于网络数据的收发不同步,V2Ray 会在内存中保存一部分未发送的数据。这段缓存是由不同速度的网络造成的。比如你通过一个 VPS 中转 YouTube 视频,你的本地机器到 VPS 的速度是 4MB/s,而 VPS 到 YouTube 的速度为 100MB/s,那么下行连接中,VPS 收到的数据比发送的多,之间产生的差值就需要使用一个缓存保存起来。V2Ray 为每个网络连接保留了 8M 的缓存,这部分缓存也会计入 V2Ray 的总内存使用。比如你同时下载 10 个非常大的文件,由于网络速度差距所产生的内存用量,就可能会达到 80MB。\n"},"chapter_04/":{"url":"chapter_04/","title":"代码细节","body":"代码细节\n本章节介绍了开发相关的内容。\n"},"chapter_04/00_roadmap.html":{"url":"chapter_04/00_roadmap.html","title":"开发计划","body":"开发计划\n版本号\nV2Ray 的版本号形如 X.Y.Z,其中 X 表示 Milestone,Y 表示 Release,如 2.3 表示第二个 Milestone 的第三个 Release;Z 仅作为修复紧急 Bug 之后的发布使用,一般不出现。\n周期\nV2Ray 每两周发布一个 Release,每 36 周左右完成一个 Milestone。\n详细的开发计划\nhttps://docs.google.com/spreadsheets/d/1CmnPzUU8Z0cPOXUQcZRDuaZGii3bOTNv63W4gcwoBF8/pubhtml\n"},"chapter_04/01_guide.html":{"url":"chapter_04/01_guide.html","title":"开发指引","body":"开发指引\n本页面包含以下内容:\n\n基本\n版本控制\n分支(Branch)\n发布(Release)\n引用其它项目\n\n\n开发流程\n写代码之前\n修改代码\nPull Request\n对代码的修改\n功能性问题\n性能相关\n新功能\n其它\n\n\n\n\nV2Ray 编码规范\n代码结构\n编码规范\n命名\n内容组织\n与 Golang 官方建议冲突的地方\n\n\n\n\n\n基本\n版本控制\nGit\n分支(Branch)\n本项目只使用一个分支,即 master。所有更改全部提交进 master,并确保 master 在任一时刻都是可编译可使用的。\n发布(Release)\n尽量使用自动化工具发布,比如 v2ray-core 使用 Travis-ci 作为自动编译和发布工具。\n引用其它项目\n\nGolang\n产品代码只能使用 golang 的标准库,即名称不包含任何网址的包;\n测试代码可以使用 golang.org/x/... ;\n如需引用其它项目请事先创建 Issue 讨论;\n\n\n其它\n只要不违反双方的协议(本项目为 MIT),且对项目有帮助的工具,都可以使用。\n\n\n\n开发流程\n写代码之前\n发现任何问题,或对项目有任何想法,请立即创建 Issue 讨论之,以减少重复劳动和消耗在代码上的时间。\n修改代码\n\nGolang\n请参考 Effective Go;\n每一次 commit 之前请运行: gofmt -w github.com/v2ray/v2ray-core/\n每一次 commit 之前请确保测试通过: go test -tags json github.com/v2ray/v2ray-core/...\n提交 PR 之前请确保新增代码有超过 70% 的代码覆盖率(code coverage)。\n\n\n其它\n请注意代码的可读性\n\n\n\nPull Request\n\n提交 PR 之前请先运行 git pull 以确保 merge 可顺利进行;\n一个 PR 只做一件事,如有对多个 bug 的修复,请对每一个 bug 提交一个 PR;\n由于 Golang 的特殊需求(Package path),Go 项目的 PR 流程和其它项目有所不同:\n先 Fork 本项目,创建你自己的 github.com/your/v2ray-core;\n在你的 Go workspace 中运行:go get github.com/v2ray/v2ray-core;\n在 go get 创建的 v2ray-core 目录中运行:git remote add fork https://github.com/you/cooltool.git;\n然后你可以在 v2ray-core 中修改代码,由于这是一个 v2ray 的 clone,import path 不受影响;\n修改完成之后,运行:git push fork;\n然后去你的 fork(就是 github.com/your/v2ray-core)中发一个 PR 即可;\n以上内容修改自这篇文章。\n\n\n\n对代码的修改\n功能性问题\n请提交至少一个测试用例(test case)来验证对现有功能的改动。\n性能相关\n请提交必要的测试数据来证明现有代码的性能缺陷,或是新增代码的性能提升。\n新功能\n\n如果新增功能对已有功能不影响,请提供可以开启/关闭的开关(如 flag),并使新功能保持默认关闭的状态;\n大型新功能(比如增加一个新的协议)开发之前,请先提交一个 issue,讨论完毕之后再进行开发。\n\n其它\n视具体情况而定。\nV2Ray 编码规范\n以下内容适用于 V2Ray 中的 Golang 代码。\n代码结构\nv2ray-core\n├── app // 应用模块\n│ ├── router // 路由\n├── common // 公用代码\n├── proxy // 通讯协议,参见[协议列表](../chapter_02/02_protocols.md)\n│ ├── blackhole\n│ ├── dokodemo-door\n│ ├── freedom\n│ ├── socks\n│ ├── vmess\n├── shell // 控制模块\n│ ├── point\n├── transport // 传输模块\n编码规范\n基本和 Golang 的官方推荐做法基本一致,有一些例外。写在这里以方便大家熟悉 Golang。\n命名\n\n文件和目录名尽量使用单个英文单词,比如 hello.go;\n如果实在没办法,则目录使用连接线/文件名使用下划线连接两个(或多个单词),比如 hello-world/hello_again.go;\n测试代码使用 _test.go 结尾;\n\n\n类型使用 Pascal 命名法,比如 ConnectionHandler;\n对缩写不强制小写,即 HTML 不必写成 Html;\n\n\n公开成员变量也使用 Pascal 命名法;\n私有成员变量使用小驼峰式命名法,如 privateAttribute;\n\n内容组织\n\n一个文件包含一个主要类型,及其相关的私用函数等;\n测试相关的文件,如 Mock 等工具类,放入 testing 子目录;\n\n与 Golang 官方建议冲突的地方\n\nGolang 不建议使用 this、self 等变量名作为 Receiver Name;V2Ray 中不作强制,可用可不用。\nGolang 不建议使用单元测试(Unit Test)库,比如其它语言中常见的 assertEquals() 函数等;V2Ray 中为了节省时间,制作了一些常用函数来简化单元测试的开发,参见 v2ray-core/testing/assert 包。\n\n"},"chapter_04/02_design.html":{"url":"chapter_04/02_design.html","title":"核心设计","body":"核心设计\n本文描述了 V2Ray 的核心部分(v2ray-core)的设计思路。\n目标\n\nv2ray-core 提供了一个网络代理平台,它是一个可以运行的最小功能集合,在其之上可以进二次开发,以提供更好的用户体验;\nv2ray-core 以跨平台为首要原则,以减少二次开发的成本;\n\n架构\n\nv2ray-core 内部分为三层:应用层、代理层和传输层。每一层内包含数个模块,模块间互相独立,同类型的模块可以无缝替换。v2ray-core 外部使用一个壳(Shell)包裹,用于和操作系统交互,如解析命令行参数、设置日志信息等。\n应用层\n应用层包含一些代理层中常用的功能,这些功能被抽象出来,以便在不同的代理模块中复用。应用层的模块应为纯软件实现,不与硬件或平台相关的技术有关。\n重要模式列表:\n\nPacket Dispatcher: 用于把传入代理所接收到的数据,传送给传出代理;\nRouter: 内置路由,详见路由配置;\nDNS: 内置的 DNS 缓存;\nInbound Handler Manager: 传入代理的管理器;\n\n代理层\n代理层分为两部分:传入代理(Inbound Proxy)和传出代理(Outbound Proxy)。两部分相互独立,传入代理不依赖于某个特定的传出代理,反之亦然。所有已实现的协议列表一览。\n传入代理\n\n实现 proxy.InboundConnectionHandler 接口;\n通过调用 DispatchToOutbound 方法将数据传输给传出代理;\n\n传出代理\n\n实现 proxy.OutboundConnectionHandler 接口;\n\n传输层\n传输层提供一些网络数据传输相关的工具模块。\n"},"chapter_04/03_vmess.html":{"url":"chapter_04/03_vmess.html","title":"VMess 协议","body":"VMess 协议\nVMess 是 V2Ray 原创的加密通讯协议。\n版本\n当前版本号为 1。\n依赖\n底层协议\nVMess 是一个基于 TCP 的协议,所有数据使用 TCP 传输。\n用户 ID\nID 等价于 UUID,是一个 16 字节长的随机数,它的作用相当于一个令牌(Token)。\n一个 ID 形如:de305d54-75b4-431b-adb2-eb6b9e546014,几乎完全随机,可以使用任何的 UUID 生成器来生成,比如这个。\n用户 ID 可在配置文件中指定。\n通讯过程\nVMess 是一个无状态协议,即客户端和服务器之间不需要握手即可直接传输数据,每一次数据传输对之前和之后的其它数据传输没有影响。\nVMess 的客户端发起一次请求,服务器判断该请求是否来自一个合法的客户端。如验证通过,则转发该请求,并把获得的响应发回给客户端。\nVMess 使用非对称格式,即客户端发出的请求和服务器端的响应使用了不同的格式。\n客户端请求\n\n\n\n16 字节\nX 字节\n余下部分\n\n\n\n\n认证信息\n指令部分\n数据部分\n\n\n\n认证信息\n认证信息是一个 16 字节的哈希(hash)值,它的计算方式如下:\n\nH = MD5\nK = 用户 ID (16 字节)\nM = UTC 时间,精确到秒,取值为当前时间的前后 30 秒随机值(8 字节, Big Endian)\nHash = HMAC(H, K, M)\n\n指令部分\n指令部分经过 AES-128-CFB 加密:\n\nKey:md5(用户 ID + 'c48619fe-8f02-49e0-b9e9-edf763e17e21')\nIV:md5(X + X + X + X),X = []byte(认证信息生成的时间) (8 字节, Big Endian)\n\n\n\n\n1 字节\n16 字节\n16 字节\n1 字节\n1 字节\n2 字节\n1 字节\n2 字节\n1 字节\nN 字节\n4 字节\n\n\n\n\n版本号 Ver\n数据加密 IV\n数据加密 Key\n响应认证 V\n选项 Opt\n保留\n指令 Cmd\n端口 Port\n地址类型 T\n地址 A\n校验 F\n\n\n\n其中:\n\n版本号 Ver:始终为 1;\n数据加密 IV:随机值;\n数据加密 Key:随机值;\n响应认证 V:随机值;\n选项 Opt:\n0x01:带校验的数据流;\n0x02:客户端期待重用 TCP 连接; \n\n\n指令 Cmd:\n0x01:TCP 数据;\n0x02:UDP 数据;\n\n\n端口 Port:Big Endian 格式的整型端口号;\n地址类型 T:\n0x01:IPv4\n0x02:域名\n0x03:IPv6\n\n\n地址 A:\n当 T = 0x01 时,A 为 4 字节 IPv4 地址;\n当 T = 0x02 时,A 为 1 字节长度(L) + L 字节域名;\n当 T = 0x03 时,A 为 16 字节 IPv6 地址;\n\n\n校验 F:指令部分除 F 外所有内容的 FNV1a hash;\n\n数据部分\n数据部分使用 AES-128-CFB 加密,Key 和 IV 在指令部分中指定\n数据部分有两种格式,默认为基本格式。\n基本格式\n所有数据均认为是请求的实际内容。这些内容将被发往指令部分所指定的地址。当 Cmd = 0x01 时,这些数据将以 TCP 的形式发送;当 Cmd = 0x02 时,这些数据将以 UDP 形式发送。\n校验格式\n当 Opt = 0x01 时,数据部分使用此格式。实际的请求数据被分割为若干个小块,每个小块的格式如下。服务器校验完所有的小块之后,再按基本格式的方式进行转发。\n\n\n\n2 字节\n4 字节\nL-4 字节\n\n\n\n\n长度 L\n校验信息\n实际数据\n\n\n\n其中:\n\n长度 L:Big Endian 格式的整型;\n校验信息:实际数据的 FNV1a hash;\n\n服务器应答\n所有应答数据使用 AES-128-CFB 加密,IV 为 md5(数据加密 IV),Key 为 md5(数据加密 Key)\n\n\n\n1 字节\n1 字节\n1 字节\n1 字节\nM 字节\n余下部分\n\n\n\n\n响应认证 V\n选项Opt\n指令 Cmd\n指令长度 M\n指令内容\n实际应答数据\n\n\n\n其中\n\n响应认证 V:必须和客户端请求中的响应认证 V 一致;\n选项 Opt:\n0x01:服务器端准备重用 TCP 连接;\n\n\n指令 Cmd:\n0x01:动态端口指令\n\n\n实际应答数据:如果请求中的 Opt = 0x01,则使用校验格式,否则使用基本格式。格式均和请求数据相同。\n\n动态端口指令\n\n\n\n1 字节\n2 字节\n16 字节\n2 字节\n1 字节\n1 字节\n\n\n\n\n保留\n端口 Port\n用户 ID\nAlterID\n用户等级\n有效时间 T\n\n\n\n其中:\n\n端口 Port:Big Endian 格式的整型端口号;\n有效时间 T:分钟数;\n\n客户端在收到动态端口指令时,服务器已开放新的端口用于通信,这时客户端可以将数据发往新的端口。在 T 分钟之后,这个端口将失效,客户端必须重新使用主端口进行通信。\n"},"chapter_04/04_compile.html":{"url":"chapter_04/04_compile.html","title":"编译源文件","body":"编译源文件\n大概流程,请根据实际情况修改\n\n安装 Git: sudo apt-get install git -y\n安装 golang:\n下载安装文件:\n64位:curl -o go_latest.tar.gz https://storage.googleapis.com/golang/go1.5.2.linux-amd64.tar.gz\n32位:curl -o go_latest.tar.gz https://storage.googleapis.com/golang/go1.5.2.linux-386.tar.gz\n\n\nsudo tar -C /usr/local -xzf go_latest.tar.gz\nexport PATH=$PATH:/usr/local/go/bin\nexport GOPATH=$HOME/work\n\n\n下载 V2Ray 源文件:go get -u github.com/v2ray/v2ray-core\n生成编译脚本:go install github.com/v2ray/v2ray-core/tools/build\n编译 V2Ray:$GOPATH/bin/build\nV2Ray 程序及配置文件会被放在 $GOPATH/bin/v2ray-XXX 文件夹下(XXX 视平台不同而不同)\n\nArch Linux\n\n安装 Git: sudo pacman -S git\n安装 golang:sudo pacman -S go\nexport GOPATH=$HOME/work\n\n\ngo get -u github.com/v2ray/v2ray-core\ngo install github.com/v2ray/v2ray-core/tools/build\n$GOPATH/bin/build\n\nDebian / Ubuntu\nbash <(curl -s https://raw.githubusercontent.com/v2ray/v2ray-core/master/release/install.sh)\n此脚本会自动安装 git 和 golang 1.5 (如果系统上没有的话,并且需要 root 权限),然后把 v2ray 编译到 $GOPATH/bin/v2ray,新装的 golang 会把 GOPATH 设定到 /v2ray。\n"},"chapter_05/":{"url":"chapter_05/","title":"参考","body":"参考\n本章节包含了一些 V2Ray 的参考资料。\n"},"chapter_05/00_config/":{"url":"chapter_05/00_config/","title":"常用配置","body":"常用配置\n本页列出了一些常用的 V2Ray 配置,以供参考。如果你有好用的配置,也可以贴上来供其他人学习。\n使用时请注意,JSON 格式实际上不支持注释("//"及其之后的部分)。使用的时候要把那些注释删除,否则 V2Ray 无法正常启动。\n"},"chapter_05/00_config/00_socks_client.html":{"url":"chapter_05/00_config/00_socks_client.html","title":"SOCKS 客户端","body":"SOCKS 5 客户端\n{\n "port": 1080, // 监听端口\n "inbound": {\n "protocol": "socks", // 入口协议为 SOCKS 5\n "settings": {\n "auth": "noauth", // 不认证\n "udp": false // 不开启 UDP 转发\n }\n },\n "outbound": {\n "protocol": "vmess", // 出口协议\n "settings": {\n "vnext": [\n {\n "address": "8.8.8.8", // 服务器 IP 地址\n "port": 17173, // 服务器端口\n "users": [\n {"id": "d17a1af7-efa5-42ca-b7e9-6a35282d737f"} // 用户 ID,须与服务器端配置相同\n ]\n }\n ]\n }\n },\n "outboundDetour": [\n {\n "protocol": "freedom", // 额外的出口协议。Freedom 协议为直连模式,不经过服务器中转。\n "settings": {},\n "tag": "direct" // 标签,在路由中用到\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "ip": [ // 以下 IP 段将被转到 Freedom\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "direct" // Freedom 的标签\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/01_multi_server.html":{"url":"chapter_05/00_config/01_multi_server.html","title":"连接多服务器","body":"单客户端连接多服务器\nV2Ray 的客户端可以配置多个服务器,这种情况下,每次发送网络请求时,V2Ray 会随机选择一个服务器来中转数据。暂时没有更多的负载平衡选项。\n{\n "port": 1080,\n "inbound": {\n "protocol": "socks", // 入口协议 SOCKS\n "settings": {\n "auth": "noauth",\n "udp": false\n }\n },\n "outbound": {\n "protocol": "vmess",\n "settings": {\n "vnext": [\n {\n "address": "1.1.1.1", // 第一个中转服务器 IP 地址\n "port": 10101, // 服务器端口\n "users": [\n {"id": "e1d6c5b1-19ec-4a70-904d-e42f3126c96a"} // 用户 ID\n ]\n },\n {\n "address": "2.2.2.2", // 第二个中转服务器 IP 地址,以此类推\n "port": 20202,\n "users": [\n {"id": "77fdfd6f-e77b-4e81-b1b6-f2f0c9a32ac3"}\n ]\n },\n {\n "address": "3.3.3.3",\n "port": 30303,\n "users": [\n {"id": "ad939547-81ee-4399-8af2-bf9d4d209f64"}\n ]\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/02_blacklist.html":{"url":"chapter_05/00_config/02_blacklist.html","title":"黑名单模式","body":"黑名单模式\n黑名单模式是指,默认不中转请求,只对指定的 IP 或域名才中转。\n{\n "port": 1080,\n "log": {\n "access": ""\n },\n "inbound": {\n "protocol": "socks",\n "settings": {\n "auth": "noauth",\n "udp": false,\n "ip": "127.0.0.1"\n }\n },\n "outbound": {\n "protocol": "freedom", // 默认直连,只有路由匹配的域名才转发\n "settings": {}\n },\n "outboundDetour": [\n {\n "protocol": "vmess",\n "tag": "blocked",\n "settings": {\n "vnext": [\n {\n "address": "195.154.64.131",\n "port": 17173,\n "users": [\n {"id": "d0609d48-f2d4-43c1-92ff-a077ca7222b4"}\n ]\n }\n ]\n }\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "domain": [\n ".goo", // 匹配所有包含".goo"的域名,如 www.google.com,www.googleapis.com\n "ggpht",\n "gstatic",\n "github",\n "facebook.com",\n "fbcdn.net",\n "youtube.com",\n "youtu.be",\n "ytimg.com",\n "twitter.com",\n "twimg.com",\n "twitpic.com",\n "t.co",\n "bitly.com",\n "j.mp",\n "bit.ly",\n "blogspot",\n "blogger",\n "blogblog",\n "dropbox.com",\n "flickr.com",\n "udn.com",\n "chinagfw.org",\n "godoc.org",\n "golang.org",\n "gravatar.com",\n "gstatic.com",\n "mediafire.com",\n "wikipedia.com",\n "wikipedia.org"\n ],\n "outboundTag": "blocked" // 与 VMess 协议的标签一致,所以匹配上述域名的请求将被中转\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/03_port_map.html":{"url":"chapter_05/00_config/03_port_map.html","title":"端口映射","body":"Remote Desktop 端口映射\nV2Ray 提供了一种端口映射机制,可以将要访问的主机的某个端口映射到本地,访问本地端口,即相当于访问了远端主机上对应的端口。提供此功能的入口协议称为“dokodemo-door”,详见协议列表。\n{\n "port": 1080,\n "inbound": { // 为了不影响正常使用,主入口协议依然使用 SOCKS。\n "protocol": "socks",\n "settings": {\n "auth": "noauth",\n "udp": false,\n "ip": "127.0.0.1"\n }\n },\n "outbound": {\n "protocol": "vmess",\n "settings": {\n "vnext": [\n {\n "address": "127.0.0.1",\n "port": 37192,\n "users": [\n {"id": "27848739-7e62-4138-9fd3-098a63964b6b"}\n ]\n }\n ]\n }\n },\n "inboundDetour": [\n {\n "protocol": "dokodemo-door", // 一个额外的入口协议\n "port": 28394, // 本地端口\n "settings": {\n "address": "1.2.3.4", // 远程机器的 IP\n "port": 3389, // 远程机器的端口\n "network": "tcp", // 网络协议,支持"tcp"、"udp"和"tcp,udp"\n "timeout": 0 // 传输超时(秒),0 表示不检测超时\n }\n }\n ]\n}\n\n"},"chapter_05/00_config/04_vmess_server.html":{"url":"chapter_05/00_config/04_vmess_server.html","title":"VMess 服务器端","body":"VMess 服务器端\n本配置文件是一个典型的服务器端配置。\n{\n "port": 37192, // 主端口\n "log" : {\n "access": "/var/log/v2ray/access.log", // 访问日志文件\n "error": "/var/log/v2ray/error.log", // 错误日志文件\n "loglevel": "warning" // 错误日志等级,可选 debug / info / warning / error\n },\n "inbound": {\n "protocol": "vmess", // 主传入协议,参见协议列表\n "settings": {\n "clients": [\n {\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22", // 用户 ID,客户端须使用相同的 ID 才可以中转流量\n "level": 1 // 用户等级,自用 VPS 可设为 1;共享 VPS 请设为 0。\n }\n ]\n }\n },\n "outbound": {\n "protocol": "freedom", // 主传出协议,参见协议列表\n "settings": {}\n },\n "inboundDetour": [\n {\n "protocol": "vmess", // 可选,开启多个 VMess 端口\n "port": "30001-30010", // 开放 30001 到 30010 这 10 个端口\n "settings": {\n "clients": [ // VMess 配置,和主传入协议类似\n {\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22",\n "level": 1\n }\n ]\n }\n }\n ],\n "outboundDetour": [\n {\n "protocol": "blackhole", // 额外的传出协议,参见[协议列表](../chapter_02/02_protocols.md)。\n "settings": {},\n "tag": "blocked"\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field", // 路由设置,默认将屏蔽所有局域网流量,以提升安全性。\n "ip": [\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "blocked"\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/05_dyn_port.html":{"url":"chapter_05/00_config/05_dyn_port.html","title":"动态端口","body":"服务器端动态端口\nV2Ray 提供了动态开启和关闭端口的功能,在服务器端进行一些配置,可以让客户端每隔一段时间就连接服务器的不同端口进行通信,以规避某些运营商的流量限制。\n样例配置如下,和原有配置不一样的地方已标注。\n{\n "port": 37192,\n "log" : {\n "access": "/var/log/v2ray/access.log",\n "error": "/var/log/v2ray/error.log",\n "loglevel": "warning"\n },\n "inbound": {\n "protocol": "vmess",\n "settings": {\n "clients": [ // clients 部分和原有的配置的一样\n {\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22",\n "level": 1,\n "alterId": 100\n }\n ],\n "detour": { // 绕路配置\n "to": "detour" // 指定绕路协议的标签,要下面 inboundDetour 中的标签一样\n }\n }\n },\n "outbound": {\n "protocol": "freedom",\n "settings": {}\n },\n "inboundDetour": [\n {\n "protocol": "vmess",\n "port": "30001-30100", // 按需开放 30001 到 300100 这 100 个端口\n "tag": "detour", // 和上面提到的标签一致\n "settings": {},\n "allocate": { // 端口分配模式\n "strategy": "random", // 随机开启\n "concurrency": 2, // 同时开放两个端口\n "refresh": 5 // 每五分钟刷新一次\n }\n }\n ],\n "outboundDetour": [\n {\n "protocol": "blackhole",\n "settings": {},\n "tag": "blocked"\n }\n ],\n "routing": { // 路由部分和原有配置一样\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "ip": [\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "blocked"\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/06_shadowsocks.html":{"url":"chapter_05/00_config/06_shadowsocks.html","title":"Shadowsocks","body":"Shadowsocks 服务器端\nV2Ray 在服务器端支持 Shadowsocks 协议,如果你同时在使用 V2Ray 和 Shadowsocks,那么服务器端可以同时开启两种协议,以减少维护成本。\n下面是一个以 VMess 为主,同时开放 Shadowsocks 端口的配置:\n{\n "port": 37192, // 主端口\n "log" : {\n "access": "/var/log/v2ray/access.log", // 访问日志文件\n "error": "/var/log/v2ray/error.log", // 错误日志文件\n "loglevel": "warning" // 错误日志等级,可选 debug / info / warning / error\n },\n "inbound": {\n "protocol": "vmess", // 主传入协议,参见协议列表\n "settings": {\n "clients": [\n {\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22", // 用户 ID,客户端须使用相同的 ID 才可以中转流量\n "level": 1 // 用户等级,自用 VPS 可设为 1;共享 VPS 请设为 0。\n }\n ]\n }\n },\n "outbound": {\n "protocol": "freedom", // 主传出协议,参见协议列表\n "settings": {}\n },\n "inboundDetour": [\n {\n "protocol": "shadowsocks", // 开启 Shadowsocks\n "port": 30001, // 监听 30001 端口\n "settings": {\n "method": "aes-256-cfb", // 加密方式,支持 aes-256-cfb 和 aes-128-cfb\n "password": "v2ray", // 密码,必须和客户端相同\n "udp": false // 是否开启 UDP 转发\n }\n },\n {\n "protocol": "shadowsocks", // 开启 Shadowsocks\n "port": 30002, // 监听 30002 端口,由于 Shadowsocks 的限制,多用户的时候只能开多个端口\n "settings": { // 配置和上述类似\n "method": "aes-256-cfb",\n "password": "v2ray-2",\n "udp": false\n }\n }\n ],\n "outboundDetour": [\n {\n "protocol": "blackhole", // 额外的传出协议,参见协议列表\n "settings": {},\n "tag": "blocked"\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field", // 路由设置,默认将屏蔽所有局域网流量,以提升安全性。\n "ip": [\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "blocked"\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/07_vps_relay.html":{"url":"chapter_05/00_config/07_vps_relay.html","title":"VPS 中转","body":"国内 VPS 中转\n为了维护方便,有时候在国内架设一台中转 VPS,在这台 VPS 上判断目标地址是国内还是国外的,只把国外的流量向国外 VPS 转发,而国内的流量使用直连。这样的配置,在用户的电脑只需要把所有流量发往这台 VPS,而不用为每一个用户都配置白名单,较为省力。\n{\n "port": 37192,\n "log" : {\n "access": "/var/log/v2ray/access.log",\n "error": "/var/log/v2ray/error.log",\n "loglevel": "warning"\n },\n "inbound": {\n "protocol": "vmess",\n "settings": {\n "clients": [\n {\n "id": "3b129dec-72a3-4d28-aeee-028a0fe86e22",\n "level": 1\n }\n ]\n }\n },\n "outbound": {\n "protocol": "vmess", // 出口协议\n "settings": {\n "vnext": [\n {\n "address": "8.8.8.8", // 服务器 IP 地址\n "port": 17173, // 服务器端口\n "users": [\n {"id": "d17a1af7-efa5-42ca-b7e9-6a35282d737f"} // 用户 ID,须与服务器端配置相同\n ]\n }\n ]\n }\n },\n "outboundDetour": [\n {\n "protocol": "blackhole",\n "settings": {},\n "tag": "blocked"\n },\n {\n "protocol": "freedom",\n "tag": "direct",\n "settings": {}\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "chinaip", // 对于所有国内的 IP,都采用直连模式\n "outboundTag": "direct"\n },\n {\n "type": "field", // 对于一些常见的网站,也使用直连模式\n "domain": [\n "qq.com",\n "baidu.com"\n ],\n "outboundTag": "direct"\n },\n {\n "type": "field", // 禁止访问局域网\n "ip": [\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "blocked"\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/08_static_hosts.html":{"url":"chapter_05/00_config/08_static_hosts.html","title":"静态路由","body":"静态路由\n由于可用的 IP 越来越少,使用 Hosts 翻墙已变得越来越难。但是如果你能找到可以直连的 IP,V2Ray 可以帮你加速访问这些网站。\n示例配置如下(V2Ray 1.14+)\n{\n "port": 1080,\n "inbound": {\n "protocol": "socks",\n "settings": {\n "auth": "noauth",\n "udp": false\n }\n },\n "outbound": {\n "protocol": "vmess",\n "settings": {\n "vnext": [\n {\n // 略过\n }\n ]\n }\n },\n "outboundDetour": [\n {\n "protocol": "freedom",\n "settings": {\n "domainStrategy": "UseIP" // 使用内部 DNS 解析\n },\n "tag": "direct"\n }\n ],\n "dns": {\n "hosts": {\n "google.com": "220.255.2.153",\n "www.google.com": "220.255.2.153",\n "dns.google.com": "220.255.2.153"\n },\n "servers": [\n "8.8.8.8",\n "8.8.4.4"\n ]\n },\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "domain": [\n "google.com",\n ],\n "outboundTag": "direct" // google.com 直连\n },\n {\n "type": "field",\n "ip": [ // 以下 IP 段将被转到 Freedom\n "0.0.0.0/8",\n "10.0.0.0/8",\n "100.64.0.0/10",\n "127.0.0.0/8",\n "169.254.0.0/16",\n "172.16.0.0/12",\n "192.0.0.0/24",\n "192.0.2.0/24",\n "192.168.0.0/16",\n "198.18.0.0/15",\n "198.51.100.0/24",\n "203.0.113.0/24",\n "::1/128",\n "fc00::/7",\n "fe80::/10"\n ],\n "outboundTag": "direct" // Freedom 的标签\n }\n ]\n }\n }\n}\n\n"},"chapter_05/00_config/09_ad_blocker.html":{"url":"chapter_05/00_config/09_ad_blocker.html","title":"广告拦截","body":"广告拦截\n使用 V2Ray 的路由和黑洞协议配合,可以做到简单的广告拦截效果。\n"outboundDetour": [\n {\n "protocol": "blackhole",\n "tag": "adblock",\n "settings": {\n "response": "http" // 自动回复 HTTP 403\n }\n }\n ],\n "routing": {\n "strategy": "rules",\n "settings": {\n "rules": [\n {\n "type": "field",\n "domain": [\n "msg.71.am", // 要拦截的域名\n "17un.co"\n ],\n "outboundTag": "adblock"\n }\n ]\n }\n }\n\n"},"chapter_05/01_exp.html":{"url":"chapter_05/01_exp.html","title":"网友经验","body":"网友经验\n本页面收录了以下来自网友们的经验和教程,感谢各位帮忙推广 V2Ray。\n\n2016.04.15 V2Ray环境搭建,支持V2Ray协议和Shadowsocks协议\n2016.02.24 V2Ray for Windows Client and Debian Server\n2016.02.05 Ubuntu环境下V2Ray配置教程\n2016.02.01 V2Ray 完全使用教程\n2016.01.26 简易配置VPS V2Ray 服务端、客户端\n2016.01.20 四(三)大开源代理技术 测速 仅供参考\n2016.01.08 使用 V2Ray 科学上网\n2016.01.08 V2Ray 科学上网\n2015.12.12 V2Ray – Shadowsocks的代替品\n2015.12.12 小巧工具V2Ray\n\n"},"chapter_00/versions.html":{"url":"chapter_00/versions.html","title":"Version History","body":"Version History\n2016.06.12 v1.16\n\nTCP connection reuse is now enabled by default;\nDokodemo-door is able to recognize TCP connection redirected by iptables;\nBlackhole is able to send back HTTP forbidden data;\n\n2016.06.05 v1.15\n\nOptionally reuse TCP connection for better performance;\nAllow listening on a specific IP address;\nAllow sending data through a specific IP address;\nFix an issue in HTTP proxy that may exhaust memory;\n\n2016.05.29 v1.14\n\nFix a panic issue in http proxy;\nMore functionalies in install script;\nStatic route in DNS;\nOfficial server address change;\n\n2016.05.16 v1.13\n\nInternal DNS server, to provide better routing results combined with chinasites and chinaip;\nFix an issue in UDP relay;\n\n2016.05.01 v1.12.1\n\nFix a bug in VMess.\n\n2016.05.01 v1.12\n\nSecond try to fix the memory usage issue;\nImprove Shadowsocks performance;\nNew option "none" in loglevel;\n\n2016.04.18 v1.11\n\nTry to fix the memory usage issue.\n\n2016.03.07 v1.10\n\nFix an performance issue when dynamic ports refreshes.\n\n2016.02.29 v1.9.1\n\nFix Shadowsocks one-time authentication (OTA) issue.\n\n2016.02.29 v1.9\n\nSupport for Shadowsocks ChaCha20 encryption;\nAdd more direct connection sites to the default configuration file;\nDynamic ports now automatically create an account.\n\n2016.02.22 v1.8\n\nUpdate installation script install-release.sh (thanks, @netcookies):\nYou can now automatically stop the V2Ray process and update automatically \nafter the completion of V2Ray;\nThe install-release.sh accepts the --proxy argument and V2Ray specified proxy\ndownload;\n\n\nUse Go 1.6 compiler to improve the performance of AES encryption;\nMinor fixes;\nUpdate the official server IP (please re-download the installation package to\nget the latest configuration).\n\n2016.02.08 v1.7\n\nUDP relay performance improved;\nShadowsocks security improved;\nMinor fixes;\nHappy new year!\n\n"}}}