我想计算广播地址:
IP: 192.168.3.1
Subnet: 255.255.255.0
= 192.168.3.255
Run Code Online (Sandbox Code Playgroud)
在C.
我知道的方式(在反向的IP和子网之间做出花哨的按位OR),但我的问题是我来自MacOSX Cocoa编程的绿色领域.
我查看了ipcal的来源,但无法将其集成到我的代码库中.互联网上必须有一行简单的十行代码,我找不到它.有人能指出我在C中如何做到的简短代码示例吗?
是否有方法(或函数/类)从CIDR表示法获取IP地址列表?
例如,我有73.35.143.32/27 CIDR并希望以此表示法获取所有IP的列表.有什么建议?
谢谢.
有没有办法找出直接连接到特定以太网接口的设备的IP地址?即给出一个主机,一个有线以太网连接和一个连接到该有线连接的第二个主机,可以使用IP下面的层或协议来找出它.
我也会对使用Windows-API函数或回调的仅使用Windows的解决方案感到满意.
(我知道这样做的真正方法可能是通过DHCP,但这是关于发现传统设备.)
我试图避免通过DNS服务器来获取电子邮件到我托管的虚拟帐户之一的地址.
我知道我可以用方括号括起IP地址但是如何为服务器上的(虚拟)托管帐户指定邮箱用户名?
换一种说法,
我想做什么,可能吗?
谢谢.
例如:
130.45.34.36255.255.240.0什么是网络ID /子网地址和广播地址?
任何人都知道delphi中的一种方式获得本地ip地址的简单列表(例如tstrings).
我已经看过另一个相关的问题了,似乎无法将它们转换为delphi.
如果我有两台内部计算机通过NAT路由器连接到同一个外部IP地址,那么路由器如何才能将流量传输到正确的内部计算机?据我所知,NAT将传入的数据包转发到最近将传出数据包发送到[传入数据包]发送方IP地址的计算机.由于两台计算机都发送到同一个地址,路由器是否将数据包转发到两者?如果是这种情况,客户端软件是否有责任确定哪些数据包是相关的?
两台计算机是否都试图连接到同一个端口?
我想检查输入的输入是否是有效的IP地址.我想要一个特定的功能,可以帮助我验证用户输入.
我想检查IP地址是否在专用网络中.它不起作用.
我的代码:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
function _isPrivate($ip)
{
$i = explode('.', $ip);
if ($i[0] == 10) {
return true;
} else if ($i[0] == 172 && $i[1] > 15 && $i[1] < 32) {
return true;
} else if ($i[0] == 192 && $i[1] == 168) {
return true;
}
return false;
}
?>
Run Code Online (Sandbox Code Playgroud)
另一个:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
function _isPrivate($ip)
{
$ip = ip2long($ip);
$net_a = ip2long('10.255.255.255') >> 24;
$net_b = ip2long('172.31.255.255') >> 20;
$net_c = ip2long('192.168.255.255') >> …Run Code Online (Sandbox Code Playgroud) 通过PHP获取用户IP地址的最准确方法是什么?
我已经阅读了很多关于它的SO问题和答案,但大多数答案都是陈旧的,用户评论说这些方法是不安全的.
例如,看看这个问题(2011):如何在PHP中获取客户端IP地址?
蒂姆肯尼迪的回答包含一个建议,使用如下:
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
Run Code Online (Sandbox Code Playgroud)
但正如我已经阅读了很多,我已经看到使用X_FORWARDED_FOR是不安全的,因为下面的评论强调:
除非您完全了解它的作用,否则请勿使用上述代码!由于这个原因,我已经看到了MASSIVE安全漏洞.客户端可以将X-Forwarded-For或Client-IP标头设置为它想要的任意值.除非您有可信的反向代理,否则不应使用任何这些值.
由于我完全不知道它的作用,我不想承担风险.他说它不安全,但没有提供一种安全的方法来获取用户的IP地址.
我试过这个简单的$_SERVER['REMOTE_ADDR'];,但这会返回错误的IP.我已经测试了这个,我的真实IP遵循这种模式:78.57.xxx.xxx但我得到的IP地址如下:81.7.xxx.xxx
所以你有什么想法吗?