国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

比較核心的技術了 虛擬ip的一種實現方式(手工添加和C#添加)

2024-07-21 02:49:47
字體:
來源:轉載
供稿:網友
比較核心的技術了 虛擬ip的一種實現方式(手工添加和C#添加)

虛擬IP技術在高可用領域像數據庫SQLSERVER、web服務器等場景下使用很多,很疑惑它是怎么實現的,偶然,發現了一種方式可以實現虛擬ip。它的原理在于同一個物理網卡,是可以擁有多個ip地址的,至于虛擬網卡,也可用通過該方式擁有多個ip。下面,就拿安裝vmware后的虛擬網卡做例子,該網絡連接已具有192.168.32.1的ip,嘗試添加一個192.168.32.6的虛擬ip地址,介紹這兩種方式。

第一種,手工添加

1、打開控制面板,在想要添加虛擬ip的網絡連接上右鍵,選擇屬性。在打開的屬性窗口中選中“此連接使用下列項目”中的“Internet 協議版本 4 (TCP/IPv4)”。

2、點擊“屬性”按鈕,進入“Internet 協議版本 4(TCP/IPv4)屬性”窗口,可以看到,該網絡連接設置了固定的ip地址為192.168.32.1。

3、點擊“高級”按鈕,進入“高級TCP/IP設置”窗口。

4、點擊在IP地址欄中的添加按鈕,彈出添加IP地址的窗口,輸入192.168.32.6即可,子網掩碼自動生成。

5、點擊添加按鈕后,一步一步點擊確定按鈕,最后,嘗試ping一下該虛擬ip地址。能ping通,則成功了。

第二種, C#添加虛擬IP

采用編程方式,可以自動添加和移除該虛擬IP地址,所謂的虛擬IP地址的轉移就是這么來實現的。當擁有虛擬IP的機器故障時,在故障機器上嘗試刪除該虛擬IP并在健康機器上重新添加該虛擬IP。具體的實現就相當復雜了,下面,就列出添加虛擬IP的代碼,供參考。

需要在該項目上引用“System.Management”程序集。

using System;using System.Management;namespace PRoJKY{    public class AddVirtualIpAddress {        public void Test() {            ManagementClass findAdapters =                            new ManagementClass("Win32_NetworkAdapterConfiguration");            ManagementObjectCollection adapters = findAdapters.GetInstances();            foreach (ManagementObject adapter in adapters) {                // 查找符合條件的網卡                if ((string)adapter["ServiceName"] != "VMware Virtual Ethernet Adapter for VMnet8")                    continue;                string[] ip = new string[] { "192.168.32.1","192.168.32.6"};                string[] mask = new string[] { "255.255.255.0","255.255.255.0"};                try{                    ManagementBaSEObject newIP = adapter.GetMethodParameters("EnableStatic");                    newIP["IPAddress"] = ip;                    newIP["SubnetMask"] = mask;                    ManagementBaseObject setIP = adapter.InvokeMethod("EnableStatic", newIP, null);                    UInt32 result = (UInt32)(setIP["returnValue"]);                }                catch (Exception) {                    throw;                }            }        }    }}

需要刪除一個虛擬IP的話,在string[] ip 中去掉虛擬IP和對應的子網掩碼就ok了。經測試,和手工添加的效果一樣,能ping通。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永康市| 黑山县| 会宁县| 吉安市| 蓬莱市| 中卫市| 乌苏市| 增城市| 桂平市| 富源县| 灵丘县| 新余市| 宜川县| 安乡县| 鄂温| 惠来县| 深州市| 繁昌县| 班戈县| 故城县| 桓仁| 宁蒗| 平舆县| 都匀市| 鄂州市| 普格县| 邢台县| 乌拉特后旗| 内江市| 富源县| 威海市| 南宫市| 广安市| 防城港市| 获嘉县| 泸定县| 康乐县| 新宾| 本溪| 三都| 陵川县|