<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shining Ray &#187; 防火墙</title>
	<atom:link href="http://shiningray.cn/tag/%e9%98%b2%e7%81%ab%e5%a2%99/feed" rel="self" type="application/rss+xml" />
	<link>http://shiningray.cn</link>
	<description>一缕阳光</description>
	<lastBuildDate>Mon, 21 Jun 2010 07:11:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>绕开万网防火墙</title>
		<link>http://shiningray.cn/rao-kai-wan-wang-fang-huo-qiang.html</link>
		<comments>http://shiningray.cn/rao-kai-wan-wang-fang-huo-qiang.html#comments</comments>
		<pubDate>Tue, 11 Dec 2007 15:08:21 +0000</pubDate>
		<dc:creator>ShiningRay</dc:creator>
				<category><![CDATA[解决方案]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[万网]]></category>
		<category><![CDATA[压力测试]]></category>
		<category><![CDATA[机房]]></category>
		<category><![CDATA[防火墙]]></category>

		<guid isPermaLink="false">http://shiningray.cn/2007/12/11/rao-kai-wan-wang-fang-huo-qiang/</guid>
		<description><![CDATA[从今年7月开始，在被无奈的服务器网络问题郁闷了很久之后，终于让我找到真正的原因，确实在于防火墙的问题。我发现问题原因的过程如下： 公司有2台服务器在万网机房，而且在同一子网中，两台服务器上有同样的两套服务器端程序。我通过ab，对指定的URL发出10个并发总计1000个请求，两台服务器都在200个请求之后，就不能连接了。其中有一台是Windows服务器，我当时还开着远程桌面，ab刚打印出“Completed 200 requests”，远程桌面立刻变灰，随即右上角显示出断开图标，闪烁之后便告诉我链接被终止。另一台是Linux服务器，我开着Putty链接在上面，通过ab测试的时候，到200个请求之后，Putty便报警说链接断开。 至于万网要这样进行限制的原因还不得知，至少即便我打电话，他们不会去改正这个问题更不会承认他们有问题。那么如果我们有放在万网或者类似机房的服务器（比如叫A），又需要在另外的地方放一个反向代理服务器到这个服务器（比如叫B），那么怎么办才能解决这个问题？在这里我找到两种解决方案： 把A的服务器端移动到服务器B，让A做专门的数据库服务器，B通过长连接（或称持久链接，persistant connection）连接到A。当然如果服务器端应用使用了短链接也是没用的。现在的很多框架如Rails能很好地利用长连接。另外，Memcached的客户端链接一般也是长链接， 架设一个VPN，然后A，B都接入这个VPN中，并只使用VPN分配的地址进行交互，这个可以完全解决前面出现的问题。 两个方案都可以尝试，复杂程度相当。 就这个问题上，我得出的结论是，压力测试是必须的，如果以后公司再托管服务器，我会先利用工具从外部测试一下其是否满足要求。 2008-03-04更新： 经过长久的深思熟虑之后，我觉得如果服务器分布在不同机房，有必要使用数据加密来防止数据包被嗅探，VPN方案可以采用加密的方式，长链接的方式也可以配置使用ssl。MySQL的SSL配置请参考：http://dev.mysql.com/doc/refman/5.0/en/secure-connections.html]]></description>
			<content:encoded><![CDATA[<p>从今年7月开始，在被<a href="http://shiningray.cn/2007/07/10/wu-nai-de-fu-wu-qi-wang-luo-wen-ti/">无奈的服务器网络问题</a>郁闷了很久之后，终于让我找到真正的原因，确实在于防火墙的问题。我发现问题原因的过程如下：</p>
<p>公司有2台服务器在万网机房，而且在同一子网中，两台服务器上有同样的两套服务器端程序。我通过<abbr title="ApacheBench">ab</abbr>，对指定的URL发出10个并发总计1000个请求，两台服务器都在200个请求之后，就不能连接了。其中有一台是Windows服务器，我当时还开着远程桌面，ab刚打印出“Completed 200 requests”，远程桌面立刻变灰，随即右上角显示出断开图标，闪烁之后便告诉我链接被终止。另一台是<span class="yshortcuts" id="lw_1197637858_0">Linux</span>服务器，我开着Putty链接在上面，通过ab测试的时候，到200个请求之后，Putty便报警说链接断开。</p>
<p>至于万网要这样进行限制的原因还不得知，至少即便我打电话，他们不会去改正这个问题更不会承认他们有问题。那么如果我们有放在万网或者类似机房的服务器（比如叫A），又需要在另外的地方放一个反向代理服务器到这个服务器（比如叫B），那么怎么办才能解决这个问题？在这里我找到两种解决方案：</p>
<ol>
<li>把A的服务器端移动到服务器B，让A做专门的数据库服务器，B通过<strong>长连接</strong>（或称持久链接，persistant connection）连接到A。当然如果服务器端应用使用了短链接也是没用的。现在的很多框架如Rails能很好地利用长连接。另外，Memcached的客户端链接一般也是长链接，</li>
<li>架设一个VPN，然后A，B都接入这个VPN中，并只使用VPN分配的地址进行交互，这个可以完全解决前面出现的问题。</li>
</ol>
<p>两个方案都可以尝试，复杂程度相当。</p>
<p>就这个问题上，我得出的结论是，<strong>压力测试是必须的</strong>，如果以后公司再托管服务器，我会先利用工具从外部测试一下其是否满足要求。</p>
<h4>2008-03-04更新：</h4>
<p>经过长久的深思熟虑之后，我觉得如果服务器分布在不同机房，有必要使用数据加密来防止数据包被嗅探，VPN方案可以采用加密的方式，长链接的方式也可以配置使用ssl。MySQL的SSL配置请参考：<a href="http://dev.mysql.com/doc/refman/5.0/en/secure-connections.html">http://dev.mysql.com/doc/refman/5.0/en/secure-connections.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://shiningray.cn/rao-kai-wan-wang-fang-huo-qiang.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>无奈的服务器网络问题</title>
		<link>http://shiningray.cn/wu-nai-de-fu-wu-qi-wang-luo-wen-ti.html</link>
		<comments>http://shiningray.cn/wu-nai-de-fu-wu-qi-wang-luo-wen-ti.html#comments</comments>
		<pubDate>Tue, 10 Jul 2007 12:04:15 +0000</pubDate>
		<dc:creator>ShiningRay</dc:creator>
				<category><![CDATA[日记]]></category>
		<category><![CDATA[万网]]></category>
		<category><![CDATA[机房]]></category>
		<category><![CDATA[网络]]></category>
		<category><![CDATA[问题]]></category>
		<category><![CDATA[防火墙]]></category>

		<guid isPermaLink="false">http://shiningray.cn/2007/07/10/wu-nai-de-fu-wu-qi-wang-luo-wen-ti/</guid>
		<description><![CDATA[我在万网有台服务器机器A，我在电信某另外机房有台服务器为B，和另外一网通机房有台服务器C B和C一直做反向代理连接到A，分别服务于电信和网通的用户 突然有一天早晨B和C都链接不到A了，但是还可以正常访问其他各个网站 同时A可以访问其他网站，但无法连接到B和C 而用自己的机器可以用远程桌面或者SSH正常访问A/B/C三台服务器 为解决这个问题，我用了在万网的另外一台服务器D，让B/C链接到D，这样就正常了 但第二天早晨，D到B/C之间的链接出现和A到B/C之间一样的问题，但切换回A又没有问题。 第三天早晨，又出现原来的问题，又要进行切换 于是我猜测是机房的防火墙问题，因为B/C到A/D的频繁链接太多，误认为是DoS攻击而屏蔽，但询问万网机房得到的回答是，他们没有阻止任何单个IP，真不知道是为啥了。]]></description>
			<content:encoded><![CDATA[<p>我在万网有台服务器机器A，我在电信某另外机房有台服务器为B，和另外一网通机房有台服务器C</p>
<p>B和C一直做反向代理连接到A，分别服务于电信和网通的用户</p>
<p>突然有一天早晨B和C都链接不到A了，但是还可以正常访问其他各个网站</p>
<p>同时A可以访问其他网站，但无法连接到B和C</p>
<p>而用自己的机器可以用远程桌面或者SSH正常访问A/B/C三台服务器</p>
<p>为解决这个问题，我用了在万网的另外一台服务器D，让B/C链接到D，这样就正常了</p>
<p>但第二天早晨，D到B/C之间的链接出现和A到B/C之间一样的问题，但切换回A又没有问题。</p>
<p>第三天早晨，又出现原来的问题，又要进行切换</p>
<p>于是我猜测是机房的防火墙问题，因为B/C到A/D的频繁链接太多，误认为是DoS攻击而屏蔽，但询问万网机房得到的回答是，他们没有阻止任何单个IP，真不知道是为啥了。</p>
]]></content:encoded>
			<wfw:commentRss>http://shiningray.cn/wu-nai-de-fu-wu-qi-wang-luo-wen-ti.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
