![]() |
1
64
我的好朋友 Alessandro 有一个 nice post 关于C#中的位运算符,您应该阅读相关内容,以便知道该怎么做。 这很容易 . 如果将提供给您的IP分解为二进制,则网络地址是所有主机位(子网掩码中的0)均为0的IP地址,最后一个地址广播地址是所有主机位均为1的IP地址。
粗体部分是主机位(其余是网络位)。如果将IP上的所有主机位都设置为0,则会得到第一个可能的IP:
以我为例:
|
![]() |
2
28
|
![]() |
3
8
反转掩码(异或加1),并使用IP进行转换。添加1。这将是起始范围。 或带面罩的IP。这将是结束范围。 |
![]() |
4
8
我是在网络部署岗位上学习到这个快捷方式的。这对我帮助很大,我想我会和大家分享这个秘密。到目前为止,我还没有找到一种我所知道的更简单的上网方式。 例如,网络192.115.103.64/27的范围是多少? 请记住子网掩码是0、128、192、224、240、248、252、254、255
255.255.255.254 11111111.11111111.11111111.11111110 /31 255.255.255.252 11111111.11111111.11111111.11111100 /30 255.255.255.248 11111111.11111111.11111111.11111000 /29 255.255.255.240 11111111.11111111.11111111.11110000 /28
255.255.255.192 11111111.11111111.11111111.11000000 /26 255.255.255.128 11111111.11111111.11111111.10000000 /25 255.255.255.0 11111111.11111111.11111111.00000000 /24
这里是数学的来源: 使用前面列出的子网掩码的子网掩码-子网掩码 在这种情况下,224-192=32
这是64-96的范围。
第一台主机为65。(第一个网络+1) 最后一位主持人是94。(广播-1) 广播是95。(最后一个网络-1) |
![]() |
5
5
我建议使用IPNetwork库 https://github.com/lduchosal/ipnetwork . IPv4
输出
|
![]() |
6
4
输入:
要查找网络地址,请执行以下操作:
要查找第一个有效/可用ip地址,请将+1添加到网络地址,即:
(32掩码)从右到“1”的位
即:
|
![]() |
7
2
你可能已经知道了这一点,但要检查你是否把这些东西弄对了,请看一看 http://www.subnet-calculator.com/ -您可以在那里看到位如何表示地址的网络和主机部分。 |