マスク IP アドレス (ワイルドカード マスクと呼ばれます) の形式を変換しようとしています。たとえば、
- SubnetMask 0.0.0.3 は 255.255.255.252 を返す必要があります。
- SubnetMask 0.0.1.255 は 255.255.254.0 を返す必要があります
どうすればこれを行うことができるのか、誰かが手がかりを持っていますか? 理論的には、バイト内のすべてのビットを反転するだけでよいので、単純なはずです。ビットを反転する機能が機能していないと思いますか? どうすればそれを実行できますか?ありがとうございます!! :)
//Retreive IP Subnet Mask (ex: Format 0.0.0.255)
IPAddress SubnetMask = IPAddress.Parse(template_script[line_delimiter].Split(' ')[2]);
//Retreive bytes array of Mask
byte[] bytes = SubnetMask.GetAddressBytes();
//Reverse all bit in bytes
byte[] reversed = Function.InvertBits(bytes);
//Retreive IP Address of inverted byte array
IPAddress SubnetMask_inverted = new IPAddress(reversed);
MessageBox.Show("Subnet original: " + SubnetMask.ToString() + "\nSubnet inverted : " + SubnetMask_inverted.ToString());