-
Notifications
You must be signed in to change notification settings - Fork 0
/
vpn简介以及国内外分流设置.html
216 lines (205 loc) · 16.3 KB
/
vpn简介以及国内外分流设置.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="littlewhite" />
<meta name="copyright" content="littlewhite" />
<meta property="og:type" content="article" />
<meta name="twitter:card" content="summary">
<meta name="keywords" content="vpn, Skill, " />
<meta property="og:title" content="vpn简介以及国内外分流设置 "/>
<meta property="og:url" content="https://chukeer.github.io/vpn简介以及国内外分流设置.html" />
<meta property="og:description" content="为了维护共产主义的纯洁性,为了阻挡资本主义万恶势力的入侵,我大中华局域网平地拔起,多少互联网用户搜索是用百度,看新闻是用新浪、QQ,社交是用人人微博之流,但总有一份不安分子想要使用Google、Facebook等一些不纯净的网站,以窥探资本主义的罪恶,为了满足这些用户的好奇心,VPN服务营运而生 vpn简介¶ === 在没有使用VPN的时候,我们访问网站的数据线路大致是这样的,我们以百度举例 你在浏览器输入www.baidu.com,DNS服务器给你解析出对应的ip 你的路由器将你的请求转给下一个路由器,下一个路由器再转给下下个路由器,一直到百度的服务器 百度服务器接收到请求,将百度的网页打包传给你,并带上你的ip 再经过一层层路由器的转发,百度返回的数据包回到你电脑上,由浏览器展示成网页的形式 如果你想知道你访问百度经过了哪些路由跳转,可以通过如下命令查看到 Linux:traceroute www.baidu.com windows(Dos界面下): tracert www.baidu.com 同样,你访问国外的网站比如Google的时候也是通过以上的线路,只不过在你的请求数据到达Google服务器之前,要经过国内的统一出口,这个出口检测到你要访问Google,它可能会给你拦截下来,至于为什么,开篇已经说了 ..." />
<meta property="og:site_name" content="楚客" />
<meta property="og:article:author" content="littlewhite" />
<meta property="og:article:published_time" content="2014-05-18T00:00:00+08:00" />
<meta property="" content="2014-05-18T00:00:00+08:00" />
<meta name="twitter:title" content="vpn简介以及国内外分流设置 ">
<meta name="twitter:description" content="为了维护共产主义的纯洁性,为了阻挡资本主义万恶势力的入侵,我大中华局域网平地拔起,多少互联网用户搜索是用百度,看新闻是用新浪、QQ,社交是用人人微博之流,但总有一份不安分子想要使用Google、Facebook等一些不纯净的网站,以窥探资本主义的罪恶,为了满足这些用户的好奇心,VPN服务营运而生 vpn简介¶ === 在没有使用VPN的时候,我们访问网站的数据线路大致是这样的,我们以百度举例 你在浏览器输入www.baidu.com,DNS服务器给你解析出对应的ip 你的路由器将你的请求转给下一个路由器,下一个路由器再转给下下个路由器,一直到百度的服务器 百度服务器接收到请求,将百度的网页打包传给你,并带上你的ip 再经过一层层路由器的转发,百度返回的数据包回到你电脑上,由浏览器展示成网页的形式 如果你想知道你访问百度经过了哪些路由跳转,可以通过如下命令查看到 Linux:traceroute www.baidu.com windows(Dos界面下): tracert www.baidu.com 同样,你访问国外的网站比如Google的时候也是通过以上的线路,只不过在你的请求数据到达Google服务器之前,要经过国内的统一出口,这个出口检测到你要访问Google,它可能会给你拦截下来,至于为什么,开篇已经说了 ...">
<title>vpn简介以及国内外分流设置 · 楚客
</title>
<!--
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet">
<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.1/css/font-awesome.css" rel="stylesheet">
--!>
<link href="https://chukeer.github.io/theme/css/bootstrap-combined.min.css" rel="stylesheet">
<link href="https://chukeer.github.io/theme/css/font-awesome.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="https://chukeer.github.io/theme/css/pygments.css" media="screen">
<link rel="stylesheet" type="text/css" href="https://chukeer.github.io/theme/tipuesearch/tipuesearch.css" media="screen">
<link rel="stylesheet" type="text/css" href="https://chukeer.github.io/theme/css/elegant.css" media="screen">
<link rel="stylesheet" type="text/css" href="https://chukeer.github.io/theme/css/custom.css" media="screen">
</head>
<body>
<div id="content-sans-footer">
<div class="navbar navbar-static-top">
<div class="navbar-inner">
<div class="container-fluid">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="https://chukeer.github.io/"><span class=site-name>楚客</span></a>
<div class="nav-collapse collapse">
<ul class="nav pull-right top-menu">
<li ><a href="https://chukeer.github.io">Home</a></li>
<li ><a href="https://chukeer.github.io/categories.html">Categories</a></li>
<li ><a href="https://chukeer.github.io/tags.html">Tags</a></li>
<li ><a href="https://chukeer.github.io/archives.html">Archives</a></li>
<li><form class="navbar-search" action="https://chukeer.github.io/search.html" onsubmit="return validateForm(this.elements['q'].value);"> <input type="text" class="search-query" placeholder="Search" name="q" id="tipue_search_input"></form></li>
</ul>
</div>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row-fluid">
<div class="span1"></div>
<div class="span10">
<article>
<div class="row-fluid">
<header class="page-header span10 offset2">
<h1><a href="https://chukeer.github.io/vpn简介以及国内外分流设置.html"> vpn简介以及国内外分流设置 </a></h1>
</header>
</div>
<div class="row-fluid">
<div class="span2 table-of-content">
<nav>
<h4>Contents</h4>
<div class="toc">
<ul>
<li><a href="#vpn">vpn简介</a></li>
<li><a href="#vpn_1">VPN分流</a><ul>
<li><a href="#_1">执行</a></li>
<li><a href="#_2">测试</a></li>
<li><a href="#_3">可能遇到的问题</a></li>
</ul>
</li>
</ul>
</div>
</nav>
</div>
<div class="span8 article-content">
<p>为了维护共产主义的纯洁性,为了阻挡资本主义万恶势力的入侵,我大中华局域网平地拔起,多少互联网用户搜索是用百度,看新闻是用新浪、QQ,社交是用人人微博之流,但总有一份不安分子想要使用Google、Facebook等一些不纯净的网站,以窥探资本主义的罪恶,为了满足这些用户的好奇心,VPN服务营运而生</p>
<h3 id="vpn">vpn简介<a class="headerlink" href="#vpn" title="Permanent link">¶</a></h3>
<p>===
在没有使用VPN的时候,我们访问网站的数据线路大致是这样的,我们以百度举例</p>
<ul>
<li>你在浏览器输入www.baidu.com,DNS服务器给你解析出对应的ip</li>
<li>你的路由器将你的请求转给下一个路由器,下一个路由器再转给下下个路由器,一直到百度的服务器</li>
<li>百度服务器接收到请求,将百度的网页打包传给你,并带上你的ip</li>
<li>再经过一层层路由器的转发,百度返回的数据包回到你电脑上,由浏览器展示成网页的形式</li>
</ul>
<p>如果你想知道你访问百度经过了哪些路由跳转,可以通过如下命令查看到</p>
<ul>
<li>Linux:<div class="highlight"><pre><span></span>traceroute www.baidu.com
</pre></div>
<ul>
<li>
<p>windows(Dos界面下):</p>
<p>tracert www.baidu.com</p>
</li>
</ul>
</li>
</ul>
<p>同样,你访问国外的网站比如Google的时候也是通过以上的线路,只不过在你的请求数据到达Google服务器之前,要经过国内的统一出口,这个出口检测到你要访问Google,它可能会给你拦截下来,至于为什么,开篇已经说了,大家都懂的。这种拦截可能是根据ip拦截(比如facebook),也可能是根据你访问的数据内容拦截(比如Google),要知道HTTP请求是没有加密的,如果别人截获了你的HTTP请求,是可以知道你访问的具体内容的</p>
<p>但是并不是所有访问国外的请求都会被拦截,比如访问<a href="http://who.is">who.is</a>就没事,于是VPN就有了用武之地。VPN主机可以理解为国外没有被拦截的服务器,当你连上VPN再访问国外网站比如google时,它的数据线路大致是这样的</p>
<ul>
<li>你的请求通过国内出口到达VPN主机,这时你的数据是经过加密的,所以无法通过内容来过滤你的请求</li>
<li>VPN主机从数据里解密,知道你要访问Google,VPN主机再向Google发起请求,这时由于VPN主机和Google服务器都在国外,不会被拦截</li>
<li>Google服务器将数据返回给VPN主机,VPN主机将数据加密,再返回给你的电脑</li>
</ul>
<p>所以我们有了VPN,就可以去一窥万恶的资本主义网络世界到底是个什么样子了。要连VPN,得知道VPN主机地址,有免费的也有收费的,为了用的心安理得我一直都是用收费的,我是在<a href="http://vpnso.com">vpnso.com</a>这个网站买的服务,支持Mac、windows、Android、IOS等设备,经济又实惠</p>
<h3 id="vpn_1">VPN分流<a class="headerlink" href="#vpn_1" title="Permanent link">¶</a></h3>
<p>===
但是有了VPN问题又来了,上面说到我们的所有请求都会通过VPN主机,也就是说我们如果连上VPN之后再访问百度,也要绕那么一大圈,这样既耗流量又浪费时间。但是聪明的程序员也想到了解决的办法,那就是设置路由表来分流</p>
<h4 id="_1">执行<a class="headerlink" href="#_1" title="Permanent link">¶</a></h4>
<p>大致的原理就是通过一些命令设置电脑的路由表,每次访问时系统会先去路由表查一下,如果在路由表里则不通过VPN访问,不在才走VPN,这样就可以实现访问国内国外网站的分流了。github上有一个项目专干这事儿,地址在<a href="https://github.com/jimmyxu/chnroutes">https://github.com/jimmyxu/chnroutes</a>。下面我简要列出主要操作</p>
<ul>
<li>首先下载chnroute.py</li>
<li>Mac下执行<code>python chnroutes.py -p mac</code>,生成ip-up和ip-down两个文件,将文件cp到/etc/ppp目录下,如果目录不存在则新建一个</li>
<li>windows下执行<code>python chnroutes.py -p win</code>,生成vpnup.bat和vpndown.bat,由于很多windows电脑没有装Python,可以直接去下载vpnup.bat和vpndown.bat两个文件,然后执行vpnup.bat。vpndown.bat其实没什么用,它是用来清除路由表的,但是电脑关机后自动清除</li>
<li>完成上面操作后再连上VPN,就可以实现分流了</li>
</ul>
<h4 id="_2">测试<a class="headerlink" href="#_2" title="Permanent link">¶</a></h4>
<p><strong>通过访问网站</strong><br/>
分别访问<a href="http://www.123cha.com">www.123cha.com</a>和<a href="http://who.is">who.is</a>,如果显示你的ip不同,那么就成功了。前者显示的是你国内的ip,后者显示的是你VPN主机的ip </p>
<p><strong>通过命令行</strong><br/>
通过前面介绍的traceroute和tracert命令,我们以windows下的tracert命令举例<br/>
在DOS下执行<code>tracert www.baidu.com</code>,第一跳ip地址应该是192.168.xx.xx<br/>
执行<code>tracert www.google.com</code>,第一跳地址应该是10.10.xx.xx </p>
<h4 id="_3">可能遇到的问题<a class="headerlink" href="#_3" title="Permanent link">¶</a></h4>
<p>这里列举一个我遇到的问题</p>
<p>在公司内部大家都在一个局域网里,有时候为了方便共享会在自己机器上搭建Apache服务,然后把地址给别人访问,比如我的局域网ip是192.168.32.91,别人的是192.168.7.35,别好奇为什么最后两个域值不一样,那是因为我们不是连在同一个路由器上,这时候如果我连上了VPN,就无法访问到对方的主机,甚至ping都会失败。为什么呢,很简单,因为请求都是走VPN的,而VPN主机是无法访问公司内部局域网的ip的,所以就会失败</p>
<p><strong>解决办法</strong><br/>
在前面提到的路由表里添加一行记录,我们以windows平台为例,打开vpnup.bat文件,建议不要用记事本,可以装一个editplus,编辑文本文件很方便。在最后按照他的格式添加一行记录,路由地址配192.168.0.0,子网掩码配255.255.0.0。断开VPN,重新执行vpnup.bat(注意这时候可能会显示路由表已添加,因为你前面已经执行过一次vpnup.bat,不要管它,一直让它执行到最后一条),再连上VPN,看看是不是可以访问了</p>
<hr/>
<aside>
<nav>
<ul class="articles-timeline">
<li class="previous-article">« <a href="https://chukeer.github.io/c++实战——多人会话聊天室1.html" title="Previous: c++实战——多人会话聊天室1">c++实战——多人会话聊天室1</a></li>
<li class="next-article"><a href="https://chukeer.github.io/c++实战——多人会话聊天室2.html" title="Next: c++实战——多人会话聊天室2">c++实战——多人会话聊天室2</a> »</li>
</ul>
</nav>
</aside>
</div>
<section>
<div class="span2" style="float:right;font-size:0.9em;">
<table class="table">
<!-- <time pubdate="pubdate" datetime="2014-05-18T00:00:00+08:00"> 5 18, 2014</time> -->
<tr>
<td>Published</td>
<td><time pubdate="pubdate" datetime="2014-05-18T00:00:00+08:00">2014- 5-18</time></td>
</tr>
<tr>
<td>Category</td>
<td><a class="category-link" href="https://chukeer.github.io/categories.html#skill-ref">Skill</a></td>
</tr>
<tr>
<td>Tags</td>
<td>
<ul class="list-of-tags tags-in-article">
<li><a href="https://chukeer.github.io/tags.html#vpn-ref">vpn
<span>1</span>
</a></li>
</ul>
</td>
</tr>
</table>
</div>
</section>
</div>
</article>
</div>
<div class="span1"></div>
</div>
</div>
<div id="push"></div>
</div>
<footer>
<div id="footer">
<ul class="footer-content">
<li class="elegant-power">Powered by <a href="http://getpelican.com/" title="Pelican Home Page">Pelican</a>. Theme: <a href="http://oncrashreboot.com/pelican-elegant" title="Theme Elegant Home Page">Elegant</a> by <a href="http://oncrashreboot.com" title="Talha Mansoor Home Page">Talha Mansoor</a></li>
</ul>
</div>
</footer> <!--
<script src="http://code.jquery.com/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
-->
<script src="https://chukeer.github.io/theme/js/jquery.min.js"></script>
<script src="https://chukeer.github.io/theme/js/bootstrap.min.js"></script>
<script>
function validateForm(query)
{
return (query.length > 0);
}
</script>
<script>
$("div.article-content table").addClass("table table-hover");
</script>
</body>
<!-- Theme: Elegant built for Pelican
License : http://oncrashreboot.com/pelican-elegant -->
</html>