• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

GetLocalIPAddressinSwift

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 Swift获取本机IP地址,子网掩码,广播地址.

 1  static func getIPAddresses() -> [String] {
 2         var addresses = [String]()
 3         
 4         // Get list of all interfaces on the local machine:
 5         var ifaddr : UnsafeMutablePointer<ifaddrs> = nil
 6         if getifaddrs(&ifaddr) == 0 {
 7             
 8             // For each interface ...
 9             for (var ptr = ifaddr; ptr != nil; ptr = ptr.memory.ifa_next) {
10                 let flags = Int32(ptr.memory.ifa_flags)
11                 var addr = ptr.memory.ifa_addr.memory
12                 
13                 // Check for running IPv4, IPv6 interfaces. Skip the loopback interface.
14                 if (flags & (IFF_UP|IFF_RUNNING|IFF_LOOPBACK)) == (IFF_UP|IFF_RUNNING) {
15                     if addr.sa_family == UInt8(AF_INET) || addr.sa_family == UInt8(AF_INET6) {
16                         
17                         // Convert interface address to a human readable string:
18                         var hostname = [CChar](count: Int(NI_MAXHOST), repeatedValue: 0)
19                         if (getnameinfo(&addr, socklen_t(addr.sa_len), &hostname, socklen_t(hostname.count),nil, socklen_t(0), NI_NUMERICHOST) == 0) {
20                             if let address = String.fromCString(hostname) {
21                                 addresses.append(address)
22                             }
23                         }
24                     }
25                 }
26             }
27             freeifaddrs(ifaddr)
28         }
29         return addresses
30     }

Reference:How to get Ip address in swift


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[Swift]LeetCode691.贴纸拼词|StickerstoSpellWord发布时间:2022-07-13
下一篇:
Swift使用Alamofire实现网络请求发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap