本發(fā)明涉及網絡通信
技術領域:
,尤其涉及一種機房網絡自動切換的方法。
背景技術:
:隨著網絡安全問題越來越突出,計算機機房的網絡管理也越來越重要,機房的網絡管理涉及到vlan(virtuallocalareanetwork)規(guī)劃、ip(internetprotocol)網段規(guī)劃、設置路由策略、設置訪問控制策略、計算機的ip地址管理等多個方面。機房往往承擔多種教學、實驗、考試任務,這些任務對網絡有不同的要求:例如大學機房平時上外網(甚至內網)需要校園網賬號認證,承擔對外培訓、考試任務時則要免認證上網,默認訪問外網采用多出口策略路由或者使用鏈路負載均衡設備(目的是提高上網速度),某些應用場景要求禁止訪問外網(例如英語四六級考試),而tofel、gre考試要求指定出口走教育網(因為是教育部主辦),普思考試(aptis)訪問外網最好指定電信(因為南方省份訪問國外走電信快)等。從機房管理角度最好給每臺電腦指定ip地址,實現座位、ip地址、上網賬號的關聯,對于一些應用場合(例如四六級考試),要求必須指定ip地址以防止作弊并實現考試過程可追溯。為了使同一個機房在不同時候能滿足上述不同的網絡需求,人們想了很多方法:例如網絡工程師預先針對每種網絡要求設置不同的vlan和ip網段,為每個網段配置不同的出口路由策略和訪問控制策略,給每臺計算機安裝多個操作系統(tǒng),每個操作系統(tǒng)設置成不同網段的ip地址。由于接入交換機端口一般配置成access模式(trunk模式一般用于交換機之間的連接,hybrid模式一般不用于連接用戶計算機),同一時刻某個端口只屬于某一個vlan,只更改計算機的ip地址并不能切換網絡,還需要配置交換機端口的vlan。解決這個問題的方法五花八門:有“物理插拔法”,在機架上并排放置多個交換機,不同交換機的端口配置為不同的vlan,當機房有不同的網絡需求時人工將網線插到不同的交換機上,如果禁止訪問外網則拔掉交換機的上聯口網線;也有“多網卡法”,給每臺計算機安裝多個網卡,每個網卡分別連接不同的網絡,通過啟用不同的網卡禁用其他網卡來切換網絡;也有“人工配置法”,就是每次切換網絡都要請網絡工程師登陸到交換機執(zhí)行命令;也有結合802.1x和動態(tài)vlan進行vlan切換,但是由于系統(tǒng)結構過于復雜、操作不便而難以實用推廣。技術實現要素:本發(fā)明實施例所要解決的技術問題在于提供一種機房網絡自動切換的方法。可針對普遍存在的同一個機房不同時候承擔不同任務有不同網絡要求這樣的場景,能夠快速切換網絡,并為每臺計算機針對不同ip網段固定分配不同的ip地址。為了解決上述技術問題,本發(fā)明實施例提供了一種機房網絡自動切換的方法,包括初始配置方法和網絡切換方法,所述初始配置方法包括vlan和ip網段規(guī)劃、配置路由策略和訪問控制列表、在交換機上生成每個vlan、保存交換機的連接參數和配置vlan的命令模版到配置文件、dhcp服務器配置、計算機組策略配置(針對沒有啟用dhcpsnooping和ipsourceguard的網絡環(huán)境),并通過執(zhí)行程序實現網絡切換。進一步地,所述初始配置方法還包括在dhcp服務器為每一個ip網段建立一個作用域并設置作用域選項,然后查看并記錄每臺計算機的mac地址,在dhcp服務器上為每個mac地址對應每一個ip網段都靜態(tài)分配一個ip地址。更進一步地,所述網絡切換方法包括以下步驟:執(zhí)行網絡切換程序并給程序傳遞要切換的目標網段參數,程序遍歷配置文件目錄下的所有配置文件,通常情況下一個交換機對應一個配置文件,配置文件包括交換機的連接參數和配置命令列表模版,程序根據目標網段參數和配置命令列表模版動態(tài)生成配置命令列表,然后根據連接參數連接到交換機,依次執(zhí)行命令列表以更改交換機端口的vlan,最后重新初始化端口(關閉端口和打開端口),每臺計算機自動重新從dhcp服務器獲得對應于新網段的ip地址,計算機更改vlan和ip后適用于新的路由策略和訪問控制列表,從而完成網絡切換。實施本發(fā)明實施例,具有如下有益效果:1、不需要給每臺計算機安裝多網卡,每臺計算機一個網卡只需要連接一個交換機端口,每次網絡切換不需要拔插物理端口,每次網絡切換不需要設置用戶計算機,每次網絡切換也不需要網絡管理員手工配置交換機。2、不需要啟用802.1x認證,也不需要有radius、ad等后臺軟件環(huán)境。3、機房計算機的ip地址可管理、可追溯。4、計算機只需要安裝一套操作系統(tǒng),切換網絡不需要手工設置ip地址等網絡參數,也不需要重啟計算機。附圖說明圖1是初始配置方法的流程圖;圖2是網絡切換方法的流程圖;具體實施方式為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將對本發(fā)明作進一步地詳細描述。本發(fā)明實施例公開了一種機房網絡自動切換的方法,包括初始配置方法和網絡切換方法兩部分。初始配置方法的流程圖如圖1所示,包括vlan和ip網段規(guī)劃、配置路由策略和訪問控制列表、在交換機上生成每個vlan、保存交換機的連接參數和配置vlan的命令模版到配置文件、dhcp(dynamichostconfigurationprotocol)服務器配置、計算機組策略配置(針對沒有啟用dhcpsnooping和ipsourceguard的網絡環(huán)境)。機房承擔不同任務時候有不同的網絡需求,不同的網絡需求技術上用不同的路由策略(特別是出口路由策略)和訪問控制列表實現。把具有相同路由策略和訪問控制策略的網絡應用歸于同一種網絡類型,例如根據出口路由策略可以分為只能訪問內網、外網多出口智能選路、外網指定走教育網、外網指定走電信等,訪問控制列表例如某個應用只允許訪問外網的某個網站等,不同應用場景可以屬于同一類網絡類型,例如tofel和gre都有同樣的網絡要求(外網走教育網)。為每一種網絡類型規(guī)劃一個vlanid,同時規(guī)劃一個ip網段(或者子網),ip網段和vlan一一對應。雖然從本質上vlan是一種二層技術,用于在二層交換機上劃分廣播域,而ip網段是三層的概念,同一個ip網段可以劃分為不同的vlan,但是為了管理方便,在整個網絡中把ip網段和vlan一一對應。下表為某個機房的網絡類型、網段、vlanid對應關系的示例:網絡類型描述ip網段和子網掩碼vlanid只能夠訪問內網10.10.0.0/1630外網多出口智能路由10.11.0.0/1631外網指定走教育網10.12.0.0/1632外網指定走電信10.13.0.0/1633外網多出口智能路由,并且只能訪問網站a10.14.0.0/1634不同的網絡拓撲結構設置路由策略的方式不同,即使是同樣的網絡拓撲結構實現同樣的功能也可能有多種不同的配置方式,例如出口路由策略可以在匯聚路由器、核心路由器、出口路由器等處設置,對于多出口的網絡環(huán)境,最好集中在出口路由器設置出口路由策略。訪問控制列表acl(accesscontrollist)可以基于mac(mediaaccesscontrol)地址、vlan、單個ip地址、ip網段等設置,機房的網絡環(huán)境acl規(guī)則一般基于ip網段。以cisco路由器為例,首先設置一個訪問控制列表(access-list)的訪問規(guī)則,然后把這個access-list應用于某個接口的某個方向。例如外網只允許訪問某個ip(假設是116.214.xxx.xxx)的設置如下:router(config)#access-list101permithost116.214.xxx.xxrouter(config)#intf0/1router(config-if)#ipaccess-group101inin就是路由器接口收到的數據,out就是路由器接口離開的數據禁止訪問某個外網ip(假設是116.214.xxx.xx)的設置如下:router(config)#access-list102denyhost116.214.xxx.xxrouter(config)#access-list102permitipanyanyrouter(config)#intf0/1router(config-if)#ipaccess-group102in對于第二個例子,由于訪問控制列表默認是禁止所有,定義訪問控制列表的最后必須加上permitipanyany。由于同一個vlan需要跨越多個交換機的多個不同端口,以及不同vlan之間需要通信,所以必須實現vlan間轉發(fā),可以使用單臂路由或者三層交換實現vlan之間的轉發(fā)。在每個接入交換機生成每一個vlan,并配置成基于端口靜態(tài)vlan(portbasedvlan),通常更改交換機端口的vlan是由網絡管理員登錄到交換機手工輸入命令進行配置,而本發(fā)明通過執(zhí)行程序自動切換。程序操作交換機可以采用cli(commandlineinterface)命令行、snmp(simplenetworkmanagementprotocol)、甚至web等方式,雖然理論上通過snmp管理交換機對于不同設備具有操作一致性,不像不同廠家的網絡設備其cli命令行可能差別很大,但是實際上snmp操作vlan以及保存配置到flash閃存的時候需要用到私有的mib(managementinformationbase),依然需要分別針對不同廠商的設備進行開發(fā),并且許多網絡環(huán)境并沒有給設備配置具有寫權限的communitystring,因此仍然推薦采用命令行的方式,命令行可以采用telnet、ssh不同的協議。把接入交換機的連接參數和配置端口的命令模版保存到文件(或者數據庫),由于使用單機程序就能夠滿足網絡切換的要求,采用文本格式的配置文件更加簡單,通常每個交換機對應一個配置文件。通過使用配置文件使系統(tǒng)具有一定的靈活性,當增加刪除交換機、更改交換機管理ip、更改帳號或密碼、更改交換機類型時候都不需要修改程序,只需要修改配置文件。通過使用命令模版使得一套配置文件能夠應用到不同的網絡類型,減少配置文件的數目并提高配置文件的可維護性。例如某個交換機(交換機型號為h3cs3100v2-26tp-si)配置文件如下所示:switch_connect_type:telnetswitch_ip:10.29.2.16switch_port:23username:^*****password:^*****<h3c-e5-1>^system-view[h3c-e5-1]^port-groupmanualgrouptoefl[h3c-e5-1-port-group-manual-grouptoefl]^group-memberethernet1/0/7toethernet1/0/24[h3c-e5-1-port-group-manual-grouptoefl]^portaccessvlan$vlan_param[h3c-e5-1-port-group-manual-grouptoefl]^shutdown[h3c-e5-1-port-group-manual-grouptoefl]^undoshutdown[h3c-e5-1-port-group-manual-grouptoefl]^quit[h3c-e5-1]^quit<h3c-e5-1>^complete_over第一行定義連接交換機的方式,示例使用telnet,第二行是設備的管理ip,第三行是端口號,接下來每一行分為兩部分,左邊是上一條指令的返回結果(只需要返回結果的一部分),右邊是要執(zhí)行的指令,中間用特殊符號^分開(因為交換機指令沒有用到符號^,用其做分隔符省去了增加轉義字符的復雜性)。之所以需要執(zhí)行指令前先匹配上一個指令的返回結果是為了防止上一個指令沒有執(zhí)行完就執(zhí)行下一個指令,最后一行的complete_over是一個特殊標記,程序執(zhí)行到此會斷開到交換機的連接。網絡設備有最大連接數的限制,雖然連接超時設備會自動斷開連接,程序執(zhí)行完后主動關閉連接釋放資源更加合理。程序運行時候將配置文件中配置命令模版的參數替換為運行時刻的參數,然后生成真正的命令列表,對于上面的例子將配置命令模版portaccessvlan$vlan_param中的參數$vlan_param替換為32(運行時傳遞給程序的參數,表示要切換的目標vlanid,由于網絡類型、vlan、ip網段已經一一對應,使用vlanid作為參數傳遞更加簡單)。示例中執(zhí)行命令列表的過程依次是連接到交換機、輸入帳號、輸入密碼、進入系統(tǒng)配置視圖、創(chuàng)建名稱為grouptoefl的端口組、設置端口組成員包含以太網口7-24、更改端口組的vlan號為32、關閉端口組的端口、打開端口組的端口、退出組配置、退出系統(tǒng)配置視圖、關閉到交換機的連接。程序操作交換機端口(除了極少數不支持端口組的老舊設備外)通過端口組(portgroup)來進行,可以大幅減少命令數。設置計算機的tcp/ip參數(ip、子網掩碼、網關、dns等)有兩種方法:一種是靜態(tài)設定,另一種是動態(tài)獲取。由于機房的計算機需要在不同網段間進行切換,靜態(tài)設定要么每次切換網段都人工重新設置,要么安裝多個操作系統(tǒng)并為每個操作系統(tǒng)預先設置不同的網絡參數,通過重啟動電腦選擇不同的操作系統(tǒng)實現切換,這兩種方法都大大增加人工維護工作量,本發(fā)明通過結合dhcp服務器和vlan切換自動實現ip地址的分配和管理。dhcp的配置包括在網絡設備配置dhcprelay、在dhcpserver配置作用域選項和靜態(tài)綁定ip地址三部分。由于通常多個vlan使用同一個dhcpserver,需要在交換機配置dhcprelay,實現不在同一個vlan的用戶計算機和dhcp服務器之間傳遞dhcp消息。在dhcp服務器為每一個ip網段建立一個作用域,設定該作用域的起始ip地址、結束ip地址、子網掩碼,然后配置作用域選項(網關、dns服務器等)。出于機房管理和安全原因,許多機房都希望實現計算機、mac、ip、用戶帳號的對應,而對于四六級考試等應用場合,要求必須固定ip地址,以防止作弊和考試過程可追溯,因此需要在dhcp服務器靜態(tài)綁定ip地址。查看并記錄每臺計算機的mac地址,然后在dhcp服務器為每個mac地址對應的每個ip網段都靜態(tài)分配一個ip。在windows環(huán)境下可以通過gui界面或者執(zhí)行命令ipconfig/all查看計算機的ip地址,linux下對應的是命令是ip命令以及ifconfig。以windowsdhcpserver為例,系統(tǒng)支持gui配置方式和命令行配置方式,推薦采用命令行配置方式(可以邊寫腳本進行批處理),在windowsdhcpserver使用命令行方式為某個mac增加靜態(tài)ip地址步驟如下:首先進入windows系統(tǒng)本身提供的網絡配置命令行工具netsh(networkshell),然后進入dhcp模式,連接dhcp服務器,連接成功后執(zhí)行命令addreserveip,該命令有兩個參數,第一個參數是ip地址,第二個參數是mac地址。絕大多數網絡環(huán)境都沒有啟用dhcpsnooping和ipsourceguard,因此需要設置每臺計算機的組策略以禁止用戶修改ip,確保ip地址由dhcp服務器管理分配。設置的具體步驟如下:在windows執(zhí)行命令gpedit.msc打開本地組策略編輯器,然后打開“用戶配置”→“管理模板”→“網絡”→“網絡連接”,右側欄內找到“禁止訪問lan連接的屬性”,然后在點擊鼠標右鍵彈出菜單,在菜單點擊“編輯”,在彈出窗口設置為“已啟用”。通過執(zhí)行程序實現網絡切換,網絡切換方法的流程圖如圖2所示。許多網絡環(huán)境下網絡設備的管理網段和用戶計算機網段是分開的,要確保運行網絡切換程序的計算機能夠訪問交換機的管理ip,比較好的方法是設置一臺可以訪問網絡設備管理網段的專用pc(或者虛擬機),機房管理員通過遠程桌面連過去運行程序。程序執(zhí)行模式有腳本模式和gui模式兩種:腳本模式傳遞一個目標網段參數給切換程序(由于網絡類型、ip網段、vlanid已經一一對應,參數使用vlanid更加簡明),程序接受參數直接執(zhí)行,執(zhí)行完畢后自動關閉退出;雙擊程序的圖標進入圖形界面,然后用戶選擇需要切換的網絡類型,然后程序執(zhí)行網絡切換操作。程序執(zhí)行時首先遍歷配置文件目錄下所有的配置文件,依次讀取每一個配置文件(通常每一個交換機一個配置文件),文件中包含交換機的連接參數和端口配置命令列表模版,根據接收到的目標網絡參數和命令列表模版動態(tài)生成配置命令列表,然后根據連接參數連接到交換機,依次執(zhí)行命令列表以更改端口的vlan,最后會重啟交換機端口(關閉端口然后打開端口)。每臺計算機會自動在新的廣播域發(fā)出dhcpdiscover報文,經過dhcprelay發(fā)送到dhcpserver,dhcpserver根據接收到dhcp客戶端租約請求的網絡接口來決定使用哪個dhcp作用域,然后在該作用域中查找該給mac地址靜態(tài)分配的ip地址并分配給計算機,用戶計算機重新獲得新網段的ip地址后會適用于新的路由策略和訪問控制列表,從而完成網絡切換。通過本發(fā)明具有如下優(yōu)點:1:不需要給每臺計算機安裝多網卡,每臺計算機一個網卡只需要連接一個交換機端口,每次網絡切換不需要拔插物理端口,每次網絡切換也不需要網絡管理員手工配置交換機,每次網絡切換不需要設置用戶計算機。技術手段:通過執(zhí)行程序操作交換機實現網絡切換。2:不需要啟用802.1x認證,也不需要有radius、ad等后臺軟件環(huán)境。技術手段:通過直接操作交換機更改端口的vlan來完成網絡切換。3:機房計算機的ip地址可管理、可追溯。技術手段:為每一個mac地址針對每一個ip網段在dhcp服務器靜態(tài)分配一個ip地址,并通過設置計算機組策略禁止手工修改ip地址。4:計算機只需要安裝一套操作系統(tǒng),不需要手工設置ip地址等網絡參數。技術手段:程序更改交換機端口的vlan后,會重新初始化端口,計算機會自動從dhcp服務器獲取不同網段的ip地址,自動完成網絡配置。以上所揭露的僅為本發(fā)明一種較佳實施例而已,當然不能以此來限定本發(fā)明之權利范圍,因此依本發(fā)明權利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。當前第1頁12