国产探花免费观看_亚洲丰满少妇自慰呻吟_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通。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沂水县| 阜阳市| 洛宁县| 隆德县| 邯郸市| 穆棱市| 珠海市| 黄山市| 百色市| 高尔夫| 嵊州市| 芦溪县| 湘潭县| 曲松县| 永善县| 玉屏| 兴城市| 胶南市| 米脂县| 禹州市| 武汉市| 赤城县| 三都| 龙岩市| 新巴尔虎左旗| 玛纳斯县| 广丰县| 洪江市| 会泽县| 额济纳旗| 屏南县| 磴口县| 乌兰浩特市| 威宁| 长沙市| 海林市| 江川县| 琼结县| 天水市| 当阳市| 阜南县|