1
我正在使用IPNetwork C#庫來查找第一個和最後一個可用的IP地址。 我想要實現的是在列表中打印或存儲第一個和最後一個可用IP之間的所有IP地址範圍。我正在使用以下來查找第一個和最後一個可用的IP。找到第一個IP和最後一個IP之間的所有IP
IPNetwork ipnetwork = IPNetwork.Parse("192.168.1.1/24");
string first = ipnetwork.FirstUsable.ToString();
string last = ipnetwork.LastUsable.ToString();
如果我通過網絡掩碼大於或等於24這是很簡單的打印所有的範圍內,因爲在最大/ 24,我們有256個IP地址,254可用於主機和一個簡單的循環將產生所有的範圍,因爲只有第四個八位組將被改變。但是,如果我傳遞一個小於\ 24 example \ 23的網絡掩碼,那麼第三個八位字節需要更改,並且一個簡單的循環將不會執行此任務,並且需要找到另一個解決方案。 此外,傳遞給IPNetwork.Parse的參數可能不是必需的192.168.1.1或10.0.2.1,但分別是192.168.1.130或10.0.2.200,這也是需要考慮的。
這是否有幫助:http://stackoverflow.com/questions/1470792/how-to-calculate-the-ip-range-when-the-ip-address-and-the-netmask-is-given and this http://stackoverflow.com/questions/14327022/calculate-ip-range-by-subnet-mask? –
你寫了IPNetwork.Parse()嗎?還是它是一個預先存在的庫? – Wamadahama
這是一個現有的圖書館。 – user2307236