标签: subnet

Oracle PL/SQL版本的INET6_ATON和NTOA功能?

有没有什么好的代码将IPv6地址字符串转换为整数?使用一种格式转换IPv4似乎相当容易.但是,IPv6有几种不同的格式来显示地址:

  • XXXX:XXXX:XXXX:XXXX ::
  • XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
  • XXXX:XXX:XXXX:0:0:XXXX:XXX:XXXX
  • XXXX:XXX:XXXX XXXX :::XXX:XXXX
  • :: ffff:XXXX:XXX(v6格式的IPv4)
  • :: ffff:###.#.#.###(也是v6格式的有效IPv4)

我希望能够将这些字符串中的一个转换为用于IP到网络匹配的INTEGER,并允许任何这些格式作为输入.

oracle plsql ipv6 subnet cidr

3
推荐指数
1
解决办法
2624
查看次数

在C中查找Linux上的子网掩码

我有兴趣在Linux中以编程方式查找本地主机的子网掩码,最好是通过本机C api.

c linux networking subnet

3
推荐指数
1
解决办法
6063
查看次数

将子网的特定 IPv6 地址分配给 cURL

我已经通过/etc/network/interfaces(分发是 Debian Squeeze)为我的专用主机分配了一个 /64 IPv6 子网

iface eth0 inet6 static
  address 2a01:4f8:XXXX:YYYY::2
  netmask 64
  gateway fe80::1
Run Code Online (Sandbox Code Playgroud)

现在,我想让 cURL (PHP 5.3.22-1~dotdeb.0) 使用该子网的一个特定 IP 地址 pe,2a01:4f8:XXXX:YYYY::3因此我的代码如下所示:

curl_setopt($this->_curl, CURLOPT_INTERFACE, '2a01:4f8:XXXX:YYYY::3');
curl_setopt($this->_curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
Run Code Online (Sandbox Code Playgroud)

跑步时curl_exec我得到bind failed with errno 99: Cannot assign requested address. 为什么会发生这种情况?在将每个 IPv6 地址定义为 /128 时/etc/network/interfaces,例如:

iface eth0 inet6 static
  address 2a01:4f8:XXXX:YYYY::2
  netmask 128
  up ip -6 addr add 2a01:4f8:XXXX:YYYY::3/128 dev eth0 preferred_lft 0
  gateway fe80::1
Run Code Online (Sandbox Code Playgroud)

那么一切都很好,cURL 使用::3IP。但是我的意图是使用我子网中的大量 IP(真的很多 IP),因此这是不切实际的。有谁知道为什么 …

php curl ip-address ipv6 subnet

3
推荐指数
1
解决办法
2735
查看次数

在C中获取SubnetMask

我想获得IP地址和子网掩码.现在IP部分已经完成,但是我找不到任何会返回带有子网掩码的结构的套接字函数.是否存在套接字函数,它将其返回到结构中?

谢谢!

c subnet

3
推荐指数
2
解决办法
4702
查看次数

如何查找IP地址范围

当我使用此命令时,会扫描哪些 IP 地址

# nmap -sP 192.168.0.120/25
Run Code Online (Sandbox Code Playgroud)

当我有地址和子网时,您能帮我如何获取 IP 范围吗?因为我试图理解这一点,但到目前为止还没有结果..提前致谢

ip-address subnet nmap

3
推荐指数
1
解决办法
7477
查看次数

将IP地址与大型路由条目匹配的最有效方法是什么?

想象有一个防火墙,系统管理员阻止了许多子网,也许是特定国家的所有子网.

例如:

192.168.2.0 / 255.255.255.0
223.201.0.0 / 255.255.0.0
223.202.0.0 / 255.254.0.0
223.208.0.0 / 255.252.0.0
....
Run Code Online (Sandbox Code Playgroud)

要确定IP地址是否已被阻止,防火墙可能会使用以下算法.

func blocked(ip)
    foreach subnet in blocked_subnets
        if in_subnet(subnet, ip)
            return true
    return false
Run Code Online (Sandbox Code Playgroud)

但是,算法运行需要太多时间,时间复杂度为O(n).如果路由表包含太多条目,则网络几乎不可用.

有没有更有效的方法将IP地址与巨大的路由条目相匹配?它是基于某种树/图(特里?)我想.我已经阅读了有关最长前缀匹配和Trie的内容,但没有得到重点.

algorithm ip-address subnet

3
推荐指数
3
解决办法
7463
查看次数

如何获取子网中的每个IP地址?

所以下面的代码是另一位用户不久前发布的。

我想知道获取 和 之间每个 IP 地址的最佳方法"net['firstip']是什么net['lastip']"

我尝试了几种方法从十进制转换为二进制,但它不起作用。我的想法是for()增加二进制数firstip直到达到lastip,并将每个步骤转换为相当于放入新数组的十进制数。

感谢所有帮助。我把 *** 放在我试图找到 IP 之间的两个特定部分旁边。

function zerofill($val,$len,$reverse = false){
    while(strlen($val)<$len)
        if($reverse)
            $val .= "0";
        else
            $val = "0".$val;
    return $val;

}


function hextoip($hex){
    for($i=0;$i<4;$i++)
        @$ip .= base_convert(substr($hex,$i*2,2),16,10).".";
    $ip = substr($ip,0,-1);
    return $ip;
}



function iptohex($ip){
    $iparr = explode(".",$ip);
    foreach($iparr as $i => $group){
        @$hex .= zerofill(base_convert($group,10,16),2);
    }
    return $hex;
}



function hextobin($hex){
    $bin = zerofill(base_convert($hex,16,2),32);
    return $bin;
}



function bintohex($bin) {
    $hex = …
Run Code Online (Sandbox Code Playgroud)

php arrays binary hex subnet

3
推荐指数
1
解决办法
7015
查看次数

AWS 公有子网与为 VPC 实例分配弹性 IP 地址

拥有公有子网与通过 AWS 将弹性 IP 地址分配给 VPC 实例这两个术语之间有什么区别?

amazon-ec2 subnet amazon-web-services amazon-vpc elastic-ip

3
推荐指数
1
解决办法
1375
查看次数

非公共 IP 实例的 AWS 公共子网 Internet 访问

我在 AWS 中有一个公共子网,其中有 3 个实例......

  1. WebApp01(例如弹性 IP - 54.23.61.239)
  2. WebApp02(私有IP - 192.168.0.24)
  3. WebApp03(私有IP - 192.168.0.25)

我的路由表设置为 192.168.0.0/16 -> local 0.0.0.0/0 -> Internet Gateway

我可以看到具有公共 IP 的实例可以访问互联网,但没有公共 IP 的实例无法访问互联网。

如何为公共子网内的其他实例提供互联网访问权限?

我是网络新手,任何帮助将不胜感激。

仅供参考:我知道创建一个 NAT,然后使用 0.0.0.0 -> NAT 创建一个单独的路由表并将该路由与私有子网相关联可以让互联网访问私有子网中的实例,但我不知道如何为公共子网中的非公共 IP 实例提供 Internet 访问权限。请帮忙 !

subnet vpc amazon-web-services amazon-vpc aws-vpc

3
推荐指数
1
解决办法
1098
查看次数

从 JS 中的子网生成随机 IP 地址

我正在尝试在给定 IP 地址子网的情况下生成随机 IP 地址。有很多资源可用于生成随机 IP,但我要求它从特定子网内生成。

我使用了一个名为netmask的 npm 模块- 但是实现绝对不优雅。任何人都可以为此提供一些巧妙的指针吗?

var netmask = require("netmask").Netmask
var block = new netmask('10.0.0.0/24')
console.log(block) // gives block details

var blockSize = block.size - 1 ;
var randomIndex = Math.floor(Math.random() * blockSize ) +1; // generate a random number less than the size of the block

console.log("randomIndex is: " + randomIndex);

block.forEach(function(ip, long, index){

    if(index == randomIndex){
        console.log('IP: ' + ip)
    console.log('INDEX: ' + index)
    // cannot break! this is a forEach :( …
Run Code Online (Sandbox Code Playgroud)

javascript ip-address ipv4 subnet npm

3
推荐指数
1
解决办法
2110
查看次数