一路小跑 | Jerry's Blog

诚信 善良 谦逊 勤勉 执着

  DonewsBlog  |  Donews首页  |  Donews社区  |  Donews邮箱  |  我的首页  |  联系作者  |  聚合   |  登录
  182篇文章 :: 22篇收藏:: 115篇评论:: 20个Trackbacks

公告


搜索本站

文章

收藏

相册

朋友的连接

搜索引擎

推荐连接

自己的连接

存档


正在读取评论……


技术加油站

Keep running
交换机是一种二层的设备(就标准的交换机而言,三层交换机除外),Mac地址是一种二层地址,那么每一台交换机上是否都有一个或多个Mac地址呢?
答案是否定的。一台二层的交换机不需要Mac地址。
为什么呢,我们可以从交换机转发的原理来看。交换机转发原理也是查表转发,这个表是Mac-端口映射表,一般就叫做Mac表。这个表一般是由交换机学习建立的。比如PC A和PC B通过交换机相连,PC A连到交换机的Port 1,PC B连到Port 2。当PC A向外发信息的时候,会带上自己的源Mac地址Mac A,这时候交换机就学习到Mac A并将Port 1和Mac A关联起来啊,这就是Mac表的一个表项;同理Mac B和Port 2 也关联起来作为Mac表的一个表项。当交换机收到目的地址是Mac A的数据包时,就向Port 1转发,当收到目的地址是Mac B的包时就向Port 2转发。整个过程都不要求交换机有一个Mac地址,它只需要记录Mac地址和对应的转发端口就可以了。

决定至少每周写一篇技术小文,不能让这里荒废。

想在我的Blog上放一个Google的搜索条,首先想到的是从别人那里移植,没有成功,算了,搁置了很久。
今天晚上心血来潮,决定自己来解决这个问题。
于是写了如下代码:

<input type=text id=kw><br>
<button onclick="return SouSuo(document.getElementById('kw').value);">Google</button>
<input type=checkbox id=ThisSite>搜索本站<br>
<script type="text/javascript">
function SouSuo(kw)
{
if(kw=='')
{alert('请输入关键词!');document.getElementById('kw').focus();return false;}
else kw=kw.replace(' ','+');
preurl='http://www.google.com/search?hl=ZH-cn&q=';
thissite='site:blog.donews.com/xrun+';
if(document.getElementById('ThisSite').checked==true)
{url=preurl+thissite+kw;}
else url=preurl+kw;
window.open(url);
}
</script>

算法也许土了点,但是还算比较好使,呵呵。


我的收藏里有两篇关于DCHP的文章(12),其实我也没有好好的看看,最近研究了一下这个东东,就我自己的理解,写一点总结。

1、DHCP客户端发现DHCP服务器发现阶段

DHCP客户端向网络广播(目的IP是255.255.255.255)DHCP Discover报文,由于这是主机还没有获得IP地址,所以这个报文的源IP是0.0.0.0;报文携带主机的Mac地址

2、DHCP服务器向DHCP客户端提供地址阶段

DHCP服务器在收到DHCP Discover报文后,向网络广播DHCP Offer报文,内容是请求主机的Mac地址,已经可以分配给该主机使用的IP地址;之所以使用广播是因为此时站点还没有获得IP地址,而另一方面,由于报文中包含了主机Mac信息,网络中的其他站点不会错误处理该报文

3、DHCP客户端向DHCP服务器请求地址阶段

之所以有这么一个请求的过程是因为网络中可能存在多台DHCP服务器,而主机只对收到的第一个DHCP Offer作出响应,之后客户端将会广播一个DHCP Request,内容包括响应的DHCP服务器地址,服务器提供给自己的IP,自己的Mac等;网络中其他服务器收到该报文,就不再对主机发出的DHCP Discover作出响应了

4、DHCP服务器向DHCP客户端确认阶段

DHCP服务器收到客户端发送的DHCP Request之后,会以单播方式向客户端发送DHCP Ack报文,包含要提供的IP地址,以及网关等其他选项,客户端收到该报文后,就可以将分配到的IP与自己的Mac绑定了。

5、DHCP客户端重新登陆网络

DHCP客户端重新登陆网络时会直接向服务器(单播)发送DHCP Request报文,如果这时候客户端原来的地址可分配,服务器发回DHCP Ack,主机获得原来的地址;如果这是客户端原来的地址不可用了(已经分配给其他主机了),那么服务器发回DHCP Nack,客户端收到后发送DHCP Discover,重新请求新的地址;如果原来的DHCP服务器down掉了,那么发送DHCP Request会超时,客户端也会重新请求新地址。

6、客户端地址租约的更新

一般来讲,动态分配的IP地址都有一定的使用期限,过期地址将被回收;当然,在每次租约期满后如果主机还要使用这个IP可以优先获得(见上一小节),但是这样客户机会在一个短暂的时间里没有IP,这将给用户带来不便;所以,一般的情况是,在租约到一半的时候,客户端就会向服务器发送DHCP Request,服务器会返回DHCP Ack,这样客户端的地址租约将更新。


先把全名写出来:
IVL: Independent Vlan Learning 独立Vlan学习
SVL: Shared Vlan Learning 共享式Vlan学习

这是交换机内Mac表存在的两种方式(IEEE 802.1Q定义)。简单来说,IVL就是每个Vlan有一个Mac-端口映射表,同一个Mac可以出现在多个表里面;而SVL是在交换机内建一张大表,映射关系是Mac-Vlan-端口,而且,一个Mac在表中只出现一次,只属于一个Vlan。

SVL在绝大多数情况下都是有效的,因为一般来说很少有同一设备(相同的Mac地址)同时在链路层连接到不同Vlan。不过对于有些多网卡,采用同一个虚Mac,连接到不同Vlan的服务器,SVL就有问题了。当然,绝大多数PC上不会多于一个网卡的,也不会有太多复杂的配置,连接到SVL交换机上是不会有问题的。

可以看出,IVL比SVL复杂一点——因为在交换机内维护一张表比维护多张表要容易(这是我的推断,没有经过严格求证)。估计高端产品应该采用IVL的多些。

就我所知,思科的Catalyst系列交换机,采用IVL。呵呵,不愧是数通领域的大牛啊!



    摘要:这个图是有点问题的,交换机还会对源Mac地址进行检查,如果Mac表里面没有,就会添加新的表项     (全文共151字)——点击此处阅读全文

Powered by Blogger

国内终于可以访问BlogSpot了,昨晚上去重新开始我的blog

有点矛盾,很喜欢 blogger.com,

donews 也不错,不过说真的,我担心它随时倒掉——尽管它有广泛的合作关系,但是与 google 比起来,靠山并不那么可靠啊!

反正现在工作了,练习英语的机会少了,不如对这里做一个English的镜像,——呵呵,最近做端口镜像想到的。而且说不定一年半载后俺就常驻海外了,英语不过关不行,所以,给自己一个锻炼的机会!

那天与一个老外交流,我给他我的blog,就是这里的,他很郁闷,因为他不懂中文。其实,他的母语也不是英语,而是保加利亚语,并且他的俄语极好!老外很强,咱不能表现得太弱是吧?!

English镜像的地址是: http://xrun.blogspot.com,我会在页面显著位置标识出来。

以后争取每在这里发一篇中文的,就在那里有一篇对应的英文版!



    摘要:这里说的Vlan是符合IEEE 802.1Q标准的Vlan。    (全文共1077字)——点击此处阅读全文


    摘要:这两天搞Vlan,对于基于协议的Vlan一直没弄明白怎么应用。后来经人一指点,茅塞顿开。    (全文共603字)——点击此处阅读全文

下下周培训教室要留给客户用,
所以,我们的培训就提前两天完成——
所以,明后两天周末我们要加班

郁闷啊,本来我们打算去长城玩的
看来计划泡汤了

下午临走的时候
领导特地来叮嘱:明天要来上班
最后还说:祝大家周末愉快!
每个人都表现的很愉快——
脸上带着笑容^-^
等领导走了
终于有人说了一句:
这感觉就像被qj了,还得陪笑~~
所有人都笑了....

这就是工作吧,以后还要慢慢体会


第1页,共4页