pablo cesar aimar 巴勃羅·塞薩爾·艾瑪爾

          “窗寒西嶺千秋雪,門思東霧萬里床!”

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            16 Posts :: 3 Stories :: 6 Comments :: 0 Trackbacks

          2006年1月16日 #

          隨著各行業(yè)信息化建設(shè)的發(fā)展,使人們對網(wǎng)絡(luò)服務(wù)器的處理能力、高可用性提出了更高的要求。尤其是高度信息化的企業(yè)中,關(guān)鍵性網(wǎng)絡(luò)服務(wù)已經(jīng)成為企業(yè)生成過程中的重要環(huán)節(jié),服務(wù)的中斷意味著生產(chǎn)的中斷,機會的喪失。
              負(fù)載平衡不但可以有效地解決單服務(wù)器的性能限制,而且可以實現(xiàn)故障的快速轉(zhuǎn)移,保證服務(wù)的高可用性以及靈活的擴展性。于是,負(fù)載平衡幾乎是每個網(wǎng)絡(luò)管理員的必修課。本文章主要講述windows2003在網(wǎng)絡(luò)負(fù)載平衡(Network Load Balancing )方面的應(yīng)用。
              Windows的負(fù)載平衡主要是依靠組建網(wǎng)絡(luò)負(fù)載平衡群集來實現(xiàn)的,支持WEB、FTP、Proxy、VPN、Windows Media、Telnet等服務(wù)器的負(fù)載平衡。
              負(fù)載平衡的原理
              NLB其實就是提供相同服務(wù)的一系列服務(wù)器同時監(jiān)聽服務(wù)請求,并允許在同一時間運行多個應(yīng)用程序?qū)嵗LB的核心是位于網(wǎng)絡(luò)適配器驅(qū)動和網(wǎng)絡(luò)層之間的WLBS.SYS的篩選器驅(qū)動。NLB把每個IP數(shù)據(jù)包分發(fā)到所有群集節(jié)點,并根據(jù)數(shù)據(jù)包的源地址、目標(biāo)地址、傳輸層協(xié)議、端口、群集的配置參數(shù)以及算法做出由某個節(jié)點處理而其他節(jié)點丟棄此數(shù)據(jù)包的統(tǒng)一決定。
          負(fù)載平衡的概念
              配置負(fù)載平衡之前,需要理解幾個重點概念。
              群集IP 地址和子網(wǎng)掩碼:群集的虛擬IP地址,是表現(xiàn)在客戶面前的"外部"地址。
              專用IP 配置和子網(wǎng)掩碼:群集各節(jié)點的本地IP地址,唯一標(biāo)識群集的各節(jié)點。
              完整Internet名:能夠訪問此群集的DNS名稱,比如cluster.it.com.cn。
              群集操作模式:在方案的選擇中詳細(xì)講述。
              端口規(guī)則:windows2003中新加的功能,細(xì)化了控制微粒,可以阻止某節(jié)點特定應(yīng)用程序的流量,而在windows2000中這是不能實現(xiàn)的。
              優(yōu)先級(單一主機標(biāo)識符):范圍在1-32之間(32是一個群集的最大節(jié)點數(shù))。此值決定如何處理沒有包含在任何為群集定義的端口規(guī)則中的傳入網(wǎng)絡(luò)通訊。具有最高優(yōu)先級的主機(優(yōu)先值最小)將處理所有這種通訊。
          負(fù)載平衡的要求
              操作系統(tǒng)的要求 在windows2003的所有版本系統(tǒng)中,NLB都是可用的。群集可以兼容以前的windows服務(wù)器操作系統(tǒng)(比如2000,NT4.0)。
              網(wǎng)絡(luò)結(jié)構(gòu)的要求
              NLB可以在連接到FDDI(光纖分布式數(shù)據(jù)接口),以太網(wǎng),吉比特以太網(wǎng)的服務(wù)器上運行,但不能在Token Ring(令牌環(huán))網(wǎng)絡(luò)上運行。
              網(wǎng)卡的要求
              所有的網(wǎng)絡(luò)適配器必須在Windows2003的硬件兼容列表中。一般情況下,服務(wù)器的網(wǎng)卡都會符合要求。
              交換機和路由器的要求
              當(dāng)計劃使用VLAN來防止交換數(shù)據(jù)洪水時,必須確保交換機支持VLAN設(shè)置;當(dāng)使用多播時,部分路由器不支持把單播IP地址映射為一個多播MAC地址,需要手工設(shè)置。
              通訊協(xié)議的要求
              綁定到群集的網(wǎng)絡(luò)適配器只能安裝TCP/IP協(xié)議,可以必須靜態(tài)分配,不支持DHCP。
              應(yīng)用程序的要求
              首先必須是TCP或UDP通訊,而且確定當(dāng)前應(yīng)用程序或服務(wù)必須支持NLB。
          負(fù)載平衡的設(shè)計
              由于網(wǎng)絡(luò)負(fù)載平衡不能根據(jù)CPU和內(nèi)存利用率來分配流量,而且性能并不是隨著節(jié)點數(shù)量的增加而線性變化的(因為隨著規(guī)模的增大,由此產(chǎn)生的網(wǎng)絡(luò)開銷,CPU開銷也隨著增大),,所以正確的設(shè)計和規(guī)劃負(fù)載平衡是至關(guān)重要的。
              群集的實現(xiàn)需要群集內(nèi)部的通訊(比如心跳信息和聚合通訊)以及管理和內(nèi)容復(fù)制的數(shù)據(jù)傳輸。這部分通訊占用了網(wǎng)絡(luò)的可用帶寬。為了克服單網(wǎng)卡的局限性,可以使用雙網(wǎng)卡,一個用于負(fù)載客戶端的通訊,另一個用于傳輸內(nèi)部通訊,管理和內(nèi)容的數(shù)據(jù)。
              群集操作模式的選擇是設(shè)計的重要一步。單播模式是指各節(jié)點的網(wǎng)絡(luò)適配器被重新指定了一個虛擬MAC(由02-bf和群集IP地址組成確保此MAC的唯一性)。由于所有綁定群集的網(wǎng)絡(luò)適配器的MAC都相同,所以在單網(wǎng)卡的情況下,各節(jié)點之間是不能通訊的,這也是推薦雙網(wǎng)卡配置的原因之一。為了避免交換機的數(shù)據(jù)洪水,應(yīng)該結(jié)合VLAN使用。
              多播模式下,網(wǎng)絡(luò)適配器在保留原有的MAC地址不變的同時,還分配了一個各節(jié)點共享的多播MAC地址。所以,即使單網(wǎng)卡的節(jié)點之間也可以正常通訊。但單網(wǎng)卡的帶寬占用、競爭網(wǎng)絡(luò)適配器等缺點仍然存在。
              此外,部分路由器(特別是Cisco產(chǎn)品)還不支持單播IP地址和多播MAC的ARP映射的自動創(chuàng)建,需要手工配置。IGMP多播(只有在選中多播時,才可以選擇此項),在繼承多播的優(yōu)點之外,NLB每隔60秒發(fā)送一次IGMP信息,使多播數(shù)據(jù)包只能發(fā)送到這個正確的交換機端口,避免了交換機數(shù)據(jù)洪水的產(chǎn)生。
              端口規(guī)則是windows2003的新特性。NLB提供3種篩選模式,可以針對端口規(guī)則采取禁止、多主機負(fù)載平衡和單主機的特殊處理。其中,多主機篩選模式提供了真正意義上的負(fù)載平衡,并且可以根據(jù)節(jié)點的實際處理能力進行負(fù)載量的分配。
              單個群集的最大節(jié)點數(shù)為32,如果還不能滿足需要,可以使用Round-Robin Domain Name Service把請求映射到多個群集上(但也因此引入了單點故障DNS,除非DNS冗余)。
          負(fù)載平衡的安裝與配置
              Windows2003引入了網(wǎng)絡(luò)負(fù)載平衡管理器(控制面板->管理工具),使負(fù)載平衡的安裝和配置更加簡單。管理器可以容易的實現(xiàn)群集的建立、刪除,節(jié)點的添加、 刪除、修改以及故障的檢測。
              運行網(wǎng)絡(luò)負(fù)載平衡管理器,選擇 群集 -> 新建 ,彈出"群集參數(shù)"對話框,按需要配置。如下:


          下一步,系統(tǒng)會提示添加附加群集IP,如果不需要可直接按下一步進行端口配置。以web群集配置為例,其典型端口配置如下圖所示:如果會話狀態(tài)不保存在該群集上,則相似性選擇無,否則選擇單一或者類C

          之后,指定一臺主機連接,并選擇一個可用的網(wǎng)絡(luò)接口,進行主機參數(shù)的設(shè)置:

          點擊完成,管理器會自動連接到主機上進行相關(guān)配置來創(chuàng)建一個新的群集。可以雙擊日志項目,了解NLB管理器都進行了什么配置。

              雖然,使用NLB管理器是一個微軟推薦的方法,但使用NLB.EXE命令行仍然有它獨特的優(yōu)點:反應(yīng)快,便于批處理。因此,掌握NLB命令也是快速部署的需要。

          負(fù)載平衡的安全考慮

              群集的遠程管理特性允許管理員在遠程計算機上使用NLB.EXE管理群集。但啟用此功能后,會帶來安全風(fēng)險,比如密碼泄露和DOS (拒絕服務(wù)攻擊)。如果啟用,請確保密碼足夠復(fù)雜,并且根據(jù)需要在防火墻上進行訪問策略的配置(比如封鎖UDP端口17172504)。

              總結(jié)

              負(fù)載平衡負(fù)載平衡是一項綜合的技術(shù),在實施過程中往往伴隨著其他技術(shù)的應(yīng)用。比如網(wǎng)絡(luò)負(fù)載平衡群集和服務(wù)器群集的結(jié)合,甚至與存儲區(qū)域網(wǎng)絡(luò)或網(wǎng)絡(luò)附加存儲相關(guān)聯(lián)都是一個不錯的主意。

          posted @ 2006-02-17 11:39 pablo cesar aimar 閱讀(418) | 評論 (0)編輯 收藏

          import java.io.*;

          public class Test {
              public static void main(String[] args) {
                  try {
                      Process process = Runtime.getRuntime().exec("ipconfig /all");
                      InputStreamReader ir = new InputStreamReader(process
                              .getInputStream());
                      LineNumberReader input = new LineNumberReader(ir);
                      String line;
                      while ((line = input.readLine()) != null)
                          if (line.indexOf("Physical Address") > 0) {
                              String MACAddr = line.substring(line.indexOf("-") - 2);
                              System.out.println("MAC address = [" + MACAddr + "]");
                          }
                  } catch (java.io.IOException e) {
                      System.err.println("IOException " + e.getMessage());
                  }
              }
          }
          posted @ 2006-01-21 10:20 pablo cesar aimar 閱讀(738) | 評論 (0)編輯 收藏

           
           
           
                 近來在網(wǎng)上經(jīng)常見有人問起Mac地址的問題,那么究竟Mac地址是什么?在現(xiàn)行的網(wǎng)絡(luò)中,扮演什么角色呢?下面我們就一同來探討一下關(guān)于Mac地址的知識。
                 什么是Mac地址?

            Mac地址就是在媒體接入層上使用的地址,通俗點說就是網(wǎng)卡的物理地址,現(xiàn)在的Mac地址一般都采用6字節(jié)48bit(在早期還有2字節(jié)16bit的Mac地址)

            前24位由是生產(chǎn)廠家向IEEE申請的廠商地址(這可是要花錢的哦!據(jù)說1000美元才能買一個地址塊)。后24位就由生產(chǎn)廠家自行定以了。(早期的2字節(jié)的卻不用申請)

            IP地址和Mac地址有什么聯(lián)系和區(qū)別

            大家都知道,現(xiàn)在有很多計算機都是通過先組建局域網(wǎng),然后通過交換機和Internet連接的(大學(xué)里的校園網(wǎng)就是這樣)。然后給每個用戶分配固定的IP地址,由管理中心統(tǒng)一管理,這樣為了管理方便就需要使用Mac地址來標(biāo)志用戶,防止發(fā)生混亂,明確責(zé)任(比如網(wǎng)絡(luò)犯罪)。另外IP地址和Mac地址是有區(qū)別的,雖然他們在局域網(wǎng)中是一一對應(yīng)的關(guān)系。IP地址是跟據(jù)現(xiàn)在的IPv4標(biāo)準(zhǔn)指定的,不受硬件限制比較容易記憶的地址,而Mac地址卻是用網(wǎng)卡的物理地址,多少與硬件有關(guān)系,比較難于記憶。

            如何知道自己的Mac地址

            方法比較多,也比較得簡單,在這里介紹兩種常用的方法,在Win9x 可用:WinIPcfg獲得,在2000、XP可用IPconfig -all獲得。如果你已經(jīng)給自己的網(wǎng)卡分配了IP還可以用 nbtstat -A 自己的IP 如下圖,后者只能在2000/XP下使用。

          如何獲得別人的Mac

            其實上面已經(jīng)涉及到了,如果是2000/XP用戶可以用 nbtstat -A IP地址(還可以獲得別的東東啊,可別學(xué)壞啊)。另外同一局域網(wǎng)內(nèi)的,你可以用ping IP 或者ping 主機名,然后用arp -a 來獲得。

            如何修改自己的Mac地址

            Mac地址是保存在網(wǎng)卡的EPROM里面,通過網(wǎng)卡生產(chǎn)廠家提供的修改程序可以更改存儲器里的地址,即使網(wǎng)卡沒有這樣的設(shè)置我們也可以通過間接的方法修改,一般網(wǎng)卡發(fā)出的包的源Mac地址并不是網(wǎng)卡本身寫上去的,而是應(yīng)用程序提供的,只是在通常的實現(xiàn)中,應(yīng)用程序先從網(wǎng)卡上得到Mac地址,每次發(fā)送的時候都用這個Mac做為源Mac而已,Windows中,網(wǎng)卡的Mac保存在注冊表中,實際使用也是從注冊表中提取的,所以只要修改注冊表就可以簡單的改變Mac

            Win9x中修改:

            打開注冊表編輯器,在HKEY_LOCAL_MacHINE\SYSTEM\CurrentControlSet\Service\Class\Net\下的0000,0001,0002 Win2000/XP中的修改:同樣打開注冊表編輯器,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\4D36E970-E325-11CE-BFC1-08002BE10318 中的0000,0001,0002中的DriverDesc,如果在0000找到,就在0000下面添加字符串變量,命名為"NetworkAddress",值為要設(shè)置的Mac地址,例如:000102030405
          完成上述操作后重啟就好了。

            Linux下的修改:

            1.必須關(guān)閉網(wǎng)卡設(shè)備,否則會報告系統(tǒng)忙,無法更改。

            命令是:"ifconfig eth0 down"

            2.修改Mac地址,這一步較Windows中的修改要簡單。

            命令是:"ifconfig eth0 hw ether 00AABBCCDDEE"

            3.重新啟用網(wǎng)卡

            "ifconfig eth0 up"網(wǎng)卡的Mac地址更改就完成了。

            現(xiàn)在還有很多軟件提供了修改Mac地址的功能,如:Mac2001

            那么既然IP和Mac地址都可以改,那么怎么防御呢?通過簡單的交換機端口綁定(端口的Mac表使用靜態(tài)表項),可以在每個交換機端口只連接一臺主機的情況下防止修改Mac地址的盜用,如果是三層設(shè)備還可以提供:交換機端口-IP-Mac 三者的綁定,防止修改Mac的IP盜用,這種方法更有效!還有些方法如配置交換機的VLAN,使用用戶認(rèn)證等,都略顯復(fù)雜,再次不多浪費筆墨。
          posted @ 2006-01-16 14:17 pablo cesar aimar 閱讀(514) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 余干县| 汉寿县| 类乌齐县| 柳河县| 宁津县| 宜都市| 石楼县| 南华县| 阳原县| 鄂托克旗| 西峡县| 雅安市| 清镇市| 康马县| 弥渡县| 太白县| 林周县| 荔波县| 綦江县| 濮阳县| 株洲市| 林甸县| 宁夏| 华亭县| 黔西县| 涡阳县| 威海市| 板桥市| 安顺市| 星子县| 静宁县| 伊春市| 西安市| 方山县| 华宁县| 镇沅| 鸡泽县| 绥棱县| 富裕县| 开平市| 司法|