连接到服务器时,如何知道客户端使用的Internet协议(IP)版本? [英] How to know which version of the Internet Protocol (IP) a client is using when connecting to my server?
本文介绍了连接到服务器时,如何知道客户端使用的Internet协议(IP)版本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想通过php检查是否有人通过IPv4或IPv6连接到我的网站.
I want to check via php if someone connects to my site via IPv4 or IPv6.
可以在$_SERVER["REMOTE_ADDR"]
中找到客户端地址,但是如何检查它是IPv4还是IPv6?
The client address can be found in $_SERVER["REMOTE_ADDR"]
but how to check if it's IPv4 or IPv6 ?
推荐答案
检查IPv4
$ip = "255.255.255.255";
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
echo "Valid IPv4";
}
else {
echo "Invalid IPv4";
}
检查IPv6
$ip = "FE80:0000:0000:0000:0202:B3FF:FE1E:8329";
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
echo "Valid IPv6";
}
else {
echo "Invalid IPv6";
}
有关更多信息,请检查PHP函数 filter_vars
和
For more, check PHP function filter_vars
and list of filters for validation
.
这篇关于连接到服务器时,如何知道客户端使用的Internet协议(IP)版本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文