问题标签 [subnet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1451 浏览

c - 如何在C中计算IP地址和子网掩码的AND运算?

我有一个 IP 地址和子网掩码,都是无符号长的;我怎样才能和这两者并检查我的传入 ipaddress (ip2) 是否属于同一个子网?

像:

0 投票
3 回答
691 浏览

subnet - 如何使用最小数量的 ICMP 回显请求确定网络的子网掩码?

如何使用最小数量的 ICMP 回显请求确定网络的子网掩码?

0 投票
7 回答
11856 浏览

c# - 给定 IP 地址和子网掩码,如何计算 CIDR?

好的,我似乎无法弄清楚:鉴于以下情况:

IP address = 192.168.1.0
Subnetmask = 255.255.255.240

使用 c#,我如何计算 CIDR 表示法192.168.1.0/28?有没有简单的方法来实现这一目标?我错过了什么吗?

谢谢!

0 投票
3 回答
1750 浏览

networking - 根据 ipaddress 唯一识别路由器后面的机器

先来点背景。我在局域网中的每台机器上都安装了一个 .net 客户端代理。他们也在同一个局域网上与我的中央服务器 [网站] 进行交互。

对于我的网站来说,弄清楚哪些机器可以相互通信很重要。例如,一个子网的机器如果不配置路由器等,就不能直接与另一个子网的机器通信。但是同一子网中的机器应该能够直接相互通信。

我面临的问题是局域网设置如图 1 所示。

图1

因为 Comp1、Comp2 和 Comp3 在路由器后面,所以它们的 IP 地址为 192.168.1.2 到 192.168.1.4。我在这些机器上的客户端代理将相同的 IP 地址报告给服务器。但是,计算机 Comp4、Comp5 也具有相同的 ipaddresses。

因此,就我的服务器而言,有 2 台机器具有相同的 IP 地址。不仅如此,因为所有机器的子网掩码都是 255.255.255.0,所以我的服务器误以为 Comp1 可以直接与 Comp5 通信,这是不可能的。

那么,我该如何解决呢?我需要在客户端或服务器中进行哪些更改,以便支持这种情况。这两个是我唯一能控制的。

0 投票
3 回答
22185 浏览

python - python 3:ipaddr/netaddr 模块

我必须在这里做错事......我目前正在尝试使用内置模块验证 ip 是否在特定子网内。

我正在使用activepython:

在变更日志中有这个:

那个和其他谷歌搜索让我相信 ipaddr 是一个内置的,但是:

所以我想我会安装 netaddr 并尝试使用它,而我从 netaddr 得到的只是:

我感到相当沮丧,我不知道从这里去哪里......建议?

0 投票
1 回答
3254 浏览

c# - 在 PowerShell 中计算给定 IP 地址和子网的定向广播地址

我的目标是在给定主机节点的 IP 和子网掩码时计算定向广播地址。我知道,听起来像家庭作业。一旦我对我的任务进行推理并将其归结为这一点,我就被自己逗乐了。无论如何,解决方案看起来就像我想的这个问题中的那个,但我不是数学专业的,我的 C 很烂。我可以使用 PowerShell(首选)或 C# 示例来帮助我前进。

谢谢!

0 投票
1 回答
1420 浏览

java - 如何在具有 v4 和 v6 地址的接口上获取 IPv4 子网掩码?

我有一个返回 ipv4 地址(4 个八位字节)的 InterfaceAddress。然而,网络前缀长度似乎是与接口关联的 ipv6 地址(它返回为 128)。如何找到正确的网络前缀长度?

0 投票
3 回答
2666 浏览

.net - 将子网掩码“/”符号转换为 Cisco 0.0.0.0 标准

我搜索了 SO 寻求帮助,但找不到我的问题的答案。

情况:我需要将“/NN”子网掩码表示法(想想 IPTABLES)转换为 0.0.0.0 cisco 表示法。

NN 是子掩码中“1”的数量,从最低八位位组到更高位。每个八位字节都是 8 位整数。

可能的解决方案:

制作一个由 32 个“0”组成的数组并用“1”填充最后的 NN 位,然后分组为 4 个八位字节并转换为 int ... /23 掩码应该类似于 0.0.1.255。

我的问题是如何在 .NET 中做到这一点......我从未使用过二进制操作和转换。

你们能帮我解决这个问题吗?

更新 - 斯蒂芬正确回答!

这是移植到 .NET 的代码

0 投票
2 回答
13643 浏览

c# - 列出子网中的所有 IP 地址

我需要获取子网中包含的所有 IP 地址,我正在尝试使用IPnetwork

例如,子网 192.168.1.0/29 将具有以下输出:

这是我的代码:

如您所见,这不是预期的结果。我错过了什么?是否有其他工具或方法可以完成这项工作?我设法破解了一些东西,但它并不漂亮,我不确定它是否正确枚举了更大的子网。

0 投票
2 回答
532 浏览

html - HTML - 使某些页面只能通过 IntraAnet \ some SUBNET 访问

我的网站中有某些页面,我只想从我组织内的 LAN 访问这些页面......现在这些页面是我网站的一部分,因为它们与数据库交互以及所有......怎么做

现在我可以让它们受密码保护......但我想让它们无法访问互联网的其余部分,并且只显示它们(没有密码验证。)并在从子网\LAN 打开它们时在其他页面中链接到它们公司...

怎么做....

如果我想将其从一个子网扩展到多个子网,如 ACL-访问控制列表,该怎么办?