wifi,网关相关标识的获取
获取WIFI的相关信息
- (void)getWifiInfo
{
NSArray *ifs = (__bridge_transfer NSArray *)CNCopySupportedInterfaces();
if (!ifs) {
return ;
}
NSDictionary *info = nil;
for (NSString *ifnam in ifs) {
info = (__bridge_transfer NSDictionary *)CNCopyCurrentNetworkInfo((__bridge CFStringRef)ifnam);
if (info && [info count]) {
break;
}
}
NSLog(@"WIFI名称 %@ MAC地址 %@",info[@"SSID"],info[@"BSSID"]);
}
获取WIFI网关以及子网掩码,端口等信息
 - (NSMutableDictionary *)getLocalInfoForCurrentWiFi {
     NSMutableDictionary *dict = [NSMutableDictionary dictionary];
     struct ifaddrs *interfaces = NULL;
     struct ifaddrs *temp_addr = NULL;
     int success = ;
     // retrieve the current interfaces - returns 0 on success
     success = getifaddrs(&interfaces);
     if (success == ) {
         // Loop through linked list of interfaces
         temp_addr = interfaces;
         //*/
         while(temp_addr != NULL) {
             if(temp_addr->ifa_addr->sa_family == AF_INET) {
                 // Check if interface is en0 which is the wifi connection on the iPhone
                 if([[NSString stringWithUTF8String:temp_addr->ifa_name] isEqualToString:@"en0"]) {
                     //----192.168.1.255 广播地址
                     NSString *broadcast = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_dstaddr)->sin_addr)];
                     if (broadcast) {
                         [dict setObject:broadcast forKey:@"broadcast"];
                     }
                     NSLog(@"broadcast address--%@",broadcast);
                     //--192.168.1.106 本机地址
                     NSString *localIp = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_addr)->sin_addr)];
                     if (localIp) {
                         [dict setObject:localIp forKey:@"localIp"];
                     }
                     NSLog(@"local device ip--%@",localIp);
                     //--255.255.255.0 子网掩码地址
                     NSString *netmask = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_netmask)->sin_addr)];
                     if (netmask) {
                         [dict setObject:netmask forKey:@"netmask"];
                     }
                     NSLog(@"netmask--%@",netmask);
                     //--en0 端口地址
                     NSString *interface = [NSString stringWithUTF8String:temp_addr->ifa_name];
                     if (interface) {
                         [dict setObject:interface forKey:@"interface"];
                     }
                     NSLog(@"interface--%@",interface);
                     return dict;
                 }
             }
             temp_addr = temp_addr->ifa_next;
         }
     }
     // Free memory
     freeifaddrs(interfaces);
     return dict;
 }
wifi,网关相关标识的获取的更多相关文章
- 背水一战 Windows 10 (76) - 控件(控件基类): Control - 基础知识, 焦点相关, 运行时获取 ControlTemplate 和 DataTemplate 中的元素
		[源码下载] 背水一战 Windows 10 (76) - 控件(控件基类): Control - 基础知识, 焦点相关, 运行时获取 ControlTemplate 和 DataTemplate 中 ... 
- wifi测试相关(iwconfig,WPA Supplicant用法)
		iwconfig用法 1.打开无线网卡电源 iwconfig wlan0 txpower no 2.列出区域内的无线网络 iwconfig wlan0 scan 3.假设要连接到网络myhome(即e ... 
- java nginx等代理或网关转发请求后获取客户端的ip地址,原理
		在没有网关或者反向代理软件情况下,java里获取客户端ip地址的方法是request.getRemoteAddr() 先解释下http协议和TCP协议: 网页默认是进行http连接了,http协议即超 ... 
- Windows下查看自己电脑的网关mac以及手动获取新的地址
		场景:正在上班时,工作电脑突然无法连接网络了.查看配置发现DNS服务器地址被分配到了192.168.1.1,瞬间懵了? 过程:(1)进入cmd.使用ipconfig /all查看网关地址; (2)使用 ... 
- 如何获取select中的value、text、index相关值 && 如何获取单选框中radio值 && 触发事件 && radio 默认选中
		如何获取select中的value.text.index相关值 select还是比较常用的一个标签,如何获取其中的内容呢? 如下所示: <select id="select" ... 
- 利用WiFi Pineapple Nano渗透客户端获取SHELL
		前言: 前两篇文章介绍了The WiFi Pineapple Nano设备的一些主要功能模块,例如PineAP.SSLsplit和Ettercap等.今天给大家实际场景演示下如何利用Pineapple ... 
- 微服务时代之网关相关技术选型及部署(nacos+gateway)
		1.场景描述 因要用到微服务,关于注册中心这块,与同事在技术原型上做了讨论,初步定的方案是使用:阿里巴巴的nacos+springcloud gateway,下面表格是同事整理的注册中心对比,以前用的 ... 
- session,cookie,sessionStorage,localStorage的相关设置以及获取删除
		一.cookie 什么是 Cookie? "cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScrip ... 
- Java基础 - Date的相关使用(获取系统当前时间)
		前言: 在日常Java开发中,常常会使用到Date的相关操作,如:获取当前系统时间.获取当前时间戳.时间戳按指定格式转换成时间等.以前用到的时候,大部分是去网上找,但事后又很快忘记.现为方便自己今后查 ... 
随机推荐
- MFC对话框中使用CHtmlEditCtrl
			MFC对话框中使用CHtmlEditCtrl 感谢原帖作者: http://blog.csdn.net/tingya/article/details/2028172 我在VS2008校正了一些代码. ... 
- php 文件锁
			当写为LOCK_EX锁 且 读为LOCK_SH锁时最为妥当,经测试,这时情况如下: 1, 先运行w.php,马上支行r.php 后 程序会先等写入后再读取 2, 先运行r.php,再马上支行w.php ... 
- SRM 146 DIV1 600
			Problem Statement Masterbrain is a two player board game in which one player decides on a secre ... 
- flexbox  的相关属性的运用
			若是用 JS 动态的添加 html 元素到有 flexbox 属性的元素上,那么渲染的时候 可能会有问题. CSS 代码如下: .display-flex { /* OLD: Safari, iOS, ... 
- BASE64编码和解码(VC源代码) 并 内存加载 CImage 图像
			BASE64可以用来将binary的字节序列数据编码成ASCII字符序列构成的文本.完整的BASE64定义可见 RFC1421和 RFC2045.编码后的数据比原始数据略长,为原来的4/3.在电子 ... 
- MySQL for Visual Studio Version
			MySQL for Visual Studio Version Connector/Net Version Supported Visual Studio Version Supported MySQ ... 
- show status和show variables区别解析
			1.show status 查看系统运行的实时状态,便于dba查看mysql当前运行的状态,做出相应优化,动态的,不可认为修改,只能系统自动update. MariaDB [(none)]> ... 
- div+css的第一个布局
			---恢复内容开始--- 这个东西说难也不难,但也要详细思虑一番: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ... 
- centos 安装 svn
			1: yum 安装 svn yum install -y subversion 2验证是否安装完成 svnserve –version svnserve, version 1.6.11 (r9344 ... 
- ubuntu 双线双网卡双IP实现方式
			昨天金桥机房上架了一台多玩的测试机,系统是ubuntu9.04 X64的系统,母机IBM X336机器.用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好系统后配置好IP发现联 ... 
