php获取本机内网ip地址
内网ip只能用于内部通信,而不能与其它网络互连。在tcp/ip协议中,专门保留了三个网段作为私有网段地址。分别如下:
10.0.0.0/8: 10.0.0.0~10.255.255.255
172.16.0.0/12: 172.16.0.0~172.31.255.255
192.168.0.0/16: 192.168.0.0~192.168.255.255
可以通过ifconfig命令查看本机的内网的ip地址,如我自己的是:
[root@iz2ze9ryeo103b85y5iy2wz ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 172.17.65.195 netmask 255.255.240.0 broadcast 172.17.79.255ether 00:16:3e:06:72:82 txqueuelen 1000 (Ethernet)RX packets 3185083 bytes 592616315 (565.1 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 2012465 bytes 740978713 (706.6 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0loop txqueuelen 1000 (Local Loopback)RX packets 12524 bytes 3744309 (3.5 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 12524 bytes 3744309 (3.5 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
上面的172.17.65.195显然在私有网段区间内,也就是我这台服务器的内网ip地址。那么如何通过php获取这个地址呢?可通过如下代码实现:
function getLocalIp()
{exec("ifconfig", $out, $stats);if (!empty($out)) {foreach ($out as $k => $row) {if (isset($row) && (strstr($row, ' 10.') || strstr($row, ' 172.') || strstr($row, ':10.') || strstr($row, ':172.'))) {$temp = ltrim($row);break;}}}$data = explode(' ', $temp);$pos = strpos($data[1], ':');$ip = $pos ? substr($data[1], $pos+1) : $data[1];return $ip;
}
显然在代码中实际上还是通过执行ifconfig命令获取到的。
php获取本机内网ip地址相关推荐
- python --获取内网IP地址
方法一 import socketdef get_local_ip_address():ip_address = ''try:# 获取本机主机名hostname = socket.gethostnam ...
- Android 获取局域网内网IP地址
Android 获取局域网内网IP地址 废话 上代码 完事 废话 拿局域网IP一般用在tcp通讯或udp通讯上,下次再整理下这类通讯的框架 上代码 /*** 网络工具* 获得局域网IP地址* @aut ...
- 网吧局域网里的设置外网IP地址、设置内网IP地址、限制内网速度和路由器共享...
现在啊,网吧的需求越来越高,同时在经济比较充裕的情况下,作为网吧的老板可能希望打造全千兆的网吧,让每个进入网吧的人都能充分体验高速的感觉,当然更重要的是在同行竞争中处于上游,特别是对网络游戏爱好者的吸 ...
- 局域网固定内网IP地址的方法(亲测有效)
公司有十来台电脑,想要做文件共享,但是碍于内网IP经常变动共享文件很不方便. 网上查了一些资料,局域网中的电脑ip若不是设置固定的话,一般都是动态获取的ip,若是需要固定ip,那要如何设置呢? 经过本 ...
- 获取本机的真实IP地址
Code: import java.net.InetAddress; import java.net.UnknownHostException; /** * 获取本机的真实IP地址.<br> ...
- 如何查询本机的内网IP地址
查询本机的内网IP有两种方法(在网上:如百度网页中显示的IP是外网IP,与内网IP不同) 第一种:cmd法 (1)win+R快捷键,打开cmd,输入ipconfig/all,点击回车, 即可得到ip地 ...
- iOS 如何获取手机外网IP地址(附内网IP地址)
查找了一些方法,最初以为拿到的就是手机对外的公网地址,其实只是本地IP地址.下面把获取手机内外网IP地址的方法总结下: 一.获取手机本地静态IP地址:(局域网) 方法1: 首先导入头文件: //IP地 ...
- 易语言 取dns服务器,易语言自动修改内网IP地址和DNS
前段时间调试网络,在UBNT和路由器之间反复修改内网IP,比较麻烦.所以想能不能通过程序来实现一键修改呢?于是乎在精易模块里找到了这个命令:系统_修改IP地址和网关和子网掩码 (),但是通过测试,发现 ...
- java获取f5服务器真实ip_通过F5获取服务器真实内网IP
渗透测试过程中,经常会遇到目标服务器使用F5 LTM做负载均衡. 如果能获取到目标服务器的真实IP地址,会给后续渗透带来一定便利. 本文既是最近渗透遇到的一点点经验分享. F5修改cookie机制 F ...
最新文章
- 树莓派:django,uwsgi,nginx安装与设置
- discuz forums.inc.php,【Discuz】积分机制实现解析
- 通过Flume简单实现Kafka与Hive对接(Json格式)
- FlatBuffers要点
- Javascript 链式运动框架——逐行分析代码,让你轻松了解运动的原理
- Go语言微服务开发框架:Go chassis
- 【李宏毅机器学习】Introduction of ELMO、BERT、GPT(p25) 学习笔记
- java servlet 3.1,Servlet 3.1规范学习小记
- MySQL字符串的拼接方法
- 通达信完全加密指标破解 通达信完全加密公式源码提取 tni tne tn6还原源文件
- 局域网QQ助手 扫描在线QQ号
- 华为认证HCDA免费公开课课表及其交流群公告
- 圣人、仁人、君子、善人、士、小人之名简释
- 细胞分裂(洛谷 P1069)
- 计算机考试金麦圈编号教程,计算机二级:数据处理.docx
- ESP32学习笔记(18)——光强度GY-30(BH1750)使用
- Discord教程:Discord账号注册、Discord多账号登录和管理
- python +selenium 实现教学质量评价自动化
- 胭脂茉莉点评推荐上海大学法院李本教授诗集《秋月曲》诗歌6首
- 手工玫瑰花_立体折纸玫瑰花的手工玫瑰花折纸大全教程