获得客户端内网、外网的ip

1、获得外网的ip代码

function get_online_ip() {

$onlineip = ‘‘;

if(getenv(‘HTTP_CLIENT_IP‘) && strcasecmp(getenv(‘HTTP_CLIENT_IP‘), ‘unknown‘)) {

$onlineip = getenv(‘HTTP_CLIENT_IP‘);

} elseif(getenv(‘HTTP_X_FORWARDED_FOR‘) && strcasecmp(getenv(‘HTTP_X_FORWARDED_FOR‘), ‘unknown‘)) {

$onlineip = getenv(‘HTTP_X_FORWARDED_FOR‘);

} elseif(getenv(‘REMOTE_ADDR‘) && strcasecmp(getenv(‘REMOTE_ADDR‘), ‘unknown‘)) {

$onlineip = getenv(‘REMOTE_ADDR‘);

} elseif(isset($_SERVER[‘REMOTE_ADDR‘]) && $_SERVER[‘REMOTE_ADDR‘] && strcasecmp($_SERVER[‘REMOTE_ADDR‘], ‘unknown‘)) {

$onlineip = $_SERVER[‘REMOTE_ADDR‘];

}

return $onlineip;

}

2、获得内网的ip的代码

function getClientIP()

{

$client_ip = null;

if (getenv("HTTP_CLIENT_client_ip"))

{

$client_ip = getenv("HTTP_CLIENT_client_ip");

}

else if (getenv("HTTP_X_FORWARDED_FOR"))

{

$client_ip = getenv("HTTP_X_FORWARDED_FOR");

}

else if (getenv("REMOTE_ADDR"))

{

$client_ip = getenv("REMOTE_ADDR");

}

else

{

$client_ip = null;

}

return $client_ip;

}

时间: 2024-10-07 13:21:38

获得客户端内网、外网的ip的相关文章

C#获取本机内网外网IP

using System.Net; # region 获取内.外网Ip /// <summary> /// 获取本地ip地址,优先取内网ip /// </summary> public static String GetLocalIp() { String[] Ips = GetLocalIpAddress(); foreach (String ip in Ips) if (ip.StartsWith("10.80.")) return ip; foreach

C#获取本地IP地址,内网+外网方法

1 #region 获取内.外网Ip 2 3 /// <summary> 4 /// 获取本地ip地址,优先取内网ip 5 /// </summary> 6 public static String GetLocalIp() 7 { 8 String[] Ips = GetLocalIpAddress(); 9 10 foreach (String ip in Ips) if (ip.StartsWith("10.80.")) return ip; 11 for

如何使用单机单网卡实现公司内、外网访问

在我所将要实施的一个项目中,某公司内部有两套网络系统实现内.外网的物理隔离,员工访问内.外网时使用的双网卡隔离器来切换实现上不同的网络.而随着业务和科技的进步,用户需要布署一套桌面云系统,用桌面云来打造内.外网络,在前端使用云终端一体机来连接桌面云服务器登陆桌面访问.这样一来就会产生很多问题: 1.因用户前期在将要布署桌面云系统的每个云终端位置只布置了一根网线,不是象其它公司要使用内.外网络都是在每个终端前布两根网线来切换不同网络. 2.云终端一体机上也只有一个网口,无法实现双网口隔离访问内.外

双网卡,内网,外网同时上网的设置

网卡配置: ======== Wan: IP: 自动获取IP地址 LAN: IP: 10.203.168.222子网掩码:255.255.225.0默认网关: 空 注意:   内部网的网卡IP配好后,设网关设置为空(即不设网关)   只设IP地址和子网掩码 --------------------------------- 1. route delete 0.0.0.0 删除0.0.0.0这条路由,因为接了两个网段有那个0.0.0.0的路由, 会发生冲突,数据包不知道该往哪边发,即使偶尔能上网,

win10内网外网智能访问

当电脑同时连接有线和WiFi时(有线连接为内网,WiFi为外网),会出现内网和外网内容无法同时访问的情况. 本方法实现内网和外网的同时访问. 第一步: 输入指令 “route print ” 查看路由表: 第二步: 输入“route delete 0.0.0.0” 删除默认路由: 第三步: 输入“route add 10.0.0.0 mask 255.0.0.0 10.1.9.1” 添加路由: 输入“route add 0.0.0.0 mask 0.0.0.0 192.168.199.1” 添加

如何在局域网内搭建外网能访问的网站?

实现这个功能很简单,用花生壳软件即可.花生壳大家都有听说过,一款ddns动态域名解析软件.根据网络环境的不同,分为内网版和公网版.安装并注册花生壳动态域名软件,在任何地点.任何时间.使用任何线路,均可利用这一服务建立拥有固定域名和最大主动权的互联网主机. 花生壳网址http://www.oray.com 公网版可以通过http://hsk.oray.com/download下载花生壳公网版进行设置搭建服务.下面以内网版搭建网站为例: 需要使用的软件工具:花生壳内网版2.2软件和IIS7.0组件,

FTP搭建 共享上网 穿透内网外网

1.ftp原理介绍 FTP只通过TCP连接,没有用于FTP的UDP组件.FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口).通常21端口是命令端口,20端口是数据端口.当混入主动/被动模式的概念时,数据端口就有可能不是20了. 主动模式(port): 主动模式下,FTP客户端从任意的非特殊的端口(N > 1023)连入到FTP服务器的命令端口--21端口.然后客户端在N+1(N+1 >= 1024)端口监听,并且通过N+1(N+1 >= 1024)端

内网外网同时连接方法

资料 内网ip:192.168.40.19 内网网网关:192.168.40.1 外网(无线网)ip:192.168.61.161 外网(无线网)网关:192.168.60.1 查询网关的方法: 1 设置外网网关优先 设置无线网卡为默认路由网关:无线网络连接属性-Internet协议(TCP/IP)-属性-高级,手动输入无线路由网关,我这里的是 192.168.1.1,跃点数为"1",是最高优先级.到了这一步,如果有线连接,无线连接同时存在的话,所有的数据都是经由无线网卡处理的. 2

配置windows路由表,使电脑同时连接内网外网方法

1.环境一(系统:windows xp,内网.外网不是同一类地址,内网地址固定): 外网:通过笔记本的无线网卡连接: 内网:通过笔记本的本地连接: 第一步,连接网线,配置本地连接地址,注意IP地址不要与其它在用ip冲突: 下图,本地连接配置10.9.1.189的内网地址. 外网地址,则由笔记本的无线网卡连接到路由器,自动获得的p地址,本机获得的IP地址为192.168.1.115. 现在测试,内网可以ping通其它任意主机,外网也连接,但打开浏览器,不能上网: 如果拔掉网线,外网就可以上网. 第

内网/外网大文件上传解决方案

最近遇见一个需要上传百兆大文件的需求,调研了七牛和腾讯云的切片分段上传功能,因此在此整理前端大文件上传相关功能的实现. 在某些业务中,大文件上传是一个比较重要的交互场景,如上传入库比较大的Excel表格数据.上传影音文件等.如果文件体积比较大,或者网络条件不好时,上传的时间会比较长(要传输更多的报文,丢包重传的概率也更大),用户不能刷新页面,只能耐心等待请求完成. 下面从文件上传方式入手,整理大文件上传的思路,并给出了相关实例代码,由于PHP内置了比较方便的文件拆分和拼接方法,因此服务端代码使用