Go语言中获取IP
简介
在net包中提供了获取所有网卡的ip,一般不会用127.0.0.1,::1这样的本地回环地址,可以过滤掉,如果想要获取当前真正在使用的地址,得通过net.Dail去连一下才知道
获取ip地址
func main() {fmt.Println(getIpv4())fmt.Println(getIpv6())
}func getIpv4() []string {ips := make([]string, 0)for _, ip := range GetAllIp() {if ip.IP.To4() != nil {ips = append(ips, ip.IP.String())}}return ips
}func getIpv6() []string {ips := make([]string, 0)for _, ip := range GetAllIp() {if ip.IP.To16() != nil {ips = append(ips, ip.IP.String())}}return ips
}func GetAllIp() []*net.IPNet {ips := make([]*net.IPNet, 0)addrs, _ := net.InterfaceAddrs()for _, addr := range addrs {// 过滤调本地回环地址if ip, ok := addr.(*net.IPNet); ok && !ip.IP.IsLoopback() {ips = append(ips, ip)}}return ips
}
获取正在使用的地址
通过net.Dial去连一下自然就能知道自己用的是哪个地址,使用udp去连地址可以随便写,只要符合规范
func main() {fmt.Println(GetUseIp())
}func GetUseIp() string {dial, err := net.Dial("udp", "8.8.8.8:80") // Google的公共DNS服务器if err != nil {return "127.0.0.1"}addr := dial.LocalAddr().String()index := strings.LastIndex(addr, ":")return addr[:index]
}执行输出172.20.131.124
欢迎关注,学习不迷路!
相关文章:
Go语言中获取IP
简介 在net包中提供了获取所有网卡的ip,一般不会用127.0.0.1,::1这样的本地回环地址,可以过滤掉,如果想要获取当前真正在使用的地址,得通过net.Dail去连一下才知道 获取ip地址 func main() {fmt.Println(getIpv4())fmt.Println…...
【Computer Vision Foundation】全球计算机视觉基金会论文网
计算机视觉基金会(Computer Vision Foundation,简称CVF)是一个致力于推动计算机视觉领域研究和发展的组织。以下是关于计算机视觉基金会的一些基本信息: 成立目的: CVF成立的目的是促进计算机视觉领域的学术研究、技术…...
计网(复习自用)
计算机网络 1.概述 1.1概念 含义 计算机网络:是一个将分散的。具有独立功能的计算机系统,通过通信设备和线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。 简单点说,计算机网络是互联的,自治的计算机集…...
安徽省广德市选择云轴科技ZStack Cloud云平台建设县级智慧城市
信创是数字中国建设的重要组成部分,也是数字经济发展的关键推动力量。作为云基础软件企业,云轴科技ZStack产品矩阵全面覆盖数据中心云基础设施,ZStack信创云首批通过可信云《一云多芯IaaS平台能力要求》先进级,是其中唯一兼容四种…...
【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 6
1、明明买了一个扫地机器人,可以通过以下指令控制机器人运动: F:向前走 10 个单位长度 L:原地左转 90 度 R:原地右转 90 度 机器人初始方向向右,需要按顺序执行以下那条指令,才能打扫完下图中的道路 A、F-L-F-R-F-F-R-F-L-F B、F-R-F-L-F-F…...
nuxt3项目修改端口号
nuxt的默认端口号是3000 一、修改开发环境端口号 方式一:使用环境变量配置,设置(PORT 或 NUXT_PORT) # .env PORT3001 #http://localhost:3001/ NITRO_PORT3001 #http://localhost:3001/ 方式二:nuxt.config.ts里配置…...
c语言中使用openssl对rsa私钥解密
单次加密数据的最大长度(block_len),由RSA秘钥模长RSA_size()和填充模式有关 填充模式:RSA_PKCS1_PADDING, block_lenRSA_size() - 11填充模式:RSA_PKCS1_OAEP_PADDING,block_lenRSA_size() - 4…...
mysql中数据是如何被用B+树查询到的
innoDB是按照页为单位读写的 那页中有很多行数据,是怎么执行查询的呢,首先我们肯定,是以单向列表形式存储的,提高了增删的效率,但是查询效率低。所以实际上对页中的行数据进行了优化,能以二分的方式进行查…...
Redisson 分布式锁的最佳实践
Redisson 分布式锁的最佳实践 第一、添加依赖第二、添加redisson配置类第三、添加测试类测试结果扩展知识redisson锁中lock方法和tryLock方法有什么区别锁续约 注意事项 引言 在现代分布式系统中,处理并发问题是至关重要的。分布式锁是解决这类问题的关键工具之一。…...
ArkTS声明式开发范式
装饰器 用来装饰类、结构体、方法以及变量,赋予其特殊的含义,如上述示例中 Entry 、 Component 、 State 都是装饰器。 Component 表示这是个自定义组件; Entry 则表示这是个入口组件; State 表示组件中的状态变量,…...
史诗级云故障敲响警钟,应用保障不能没有“连续键”!
近日,知名云服务商出现一次史诗级的云故障:全球所有区域/所有服务同时异常,故障持续长达3小时之多,云上众多应用受到极大影响。 如今,在一个充满不确定性和复杂性的数字化时代,哪怕是顶级云服务商亦不能避…...
SSH连接远程服务器报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED 解决方法
一.错误描述 报错信息里提示了路径信息/root/.ssh/known_hosts:20 二.解决方案 方法一 输入以下指令: ssh-keygen -R XXX(需要连接远程服务器的ip) 按照我的例子ip:10.165.7.136,会返回以下信息: 重新尝试连接: 输…...
数据库——查询连续的月份
一、GP或PGSQL with recursive t(n) as (select date(2023-01-01) union all select n1 from t where n < now()) select to_char(n, yyyy-mm) as ny from t group by ny order by ny 二、Hive select add_months(FROM_UNIXTIME(unix_timestamp(SUBSTR(start_date, 1, 7…...
git代码提交命令(如何提交代码)
# 提交暂存区到仓库区 $ git commit -m [message]# 提交暂存区的指定文件到仓库区 $ git commit [file1] [file2] ... -m [message]# 提交工作区自上次commit之后的变化,直接到仓库区 $ git commit -a# 提交时显示所有diff信息 $ git commit -v# 使用一次新的commit…...
jmeter中调用python代码
1、安装pyinstaller pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller 2、将py脚本打包 pyinstaller -F venv/get_image/OCR_jmeter_api.py 3、jmeter中添加OS Process Sampler并调用dist下的程序 4、执行jmeter...
当当网获得dangdang商品详情商品列表API 测试请求入口
item_get-获得dangdang商品详情 获取商品详情 item_search-按关键字搜索dangdang商品 获取商品列表 公共参数 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请…...
git如何查看配置,修改配置,设置配置
# 显示当前的Git配置 $ git config --list# 编辑Git配置文件 $ git config -e [--global]# 设置提交代码时的用户信息 $ git config [--global] user.name "[name]" $ git config [--global] user.email "[email address]"...
交通流合成数据生成原理及实现代码
移动数据是设备的地理位置,通过正常活动被动产生。 它具有从交通规划到迁移预测的重要应用。 由于移动数据稀有且难以收集,研究人员已开始探索综合生成移动数据的解决方案。 在本文中,我将讨论一种用于合成移动数据的简单解决方案。 该合成数…...
leetcode 240. 搜索二维矩阵 II
2023.11.22 本题最先想到的是暴力法和二分法,暴力法就不写了,写一下二分法的解法,java代码如下: class Solution {public boolean searchMatrix(int[][] matrix, int target) {for(int[] row : matrix){int left 0;int right r…...
a标签超链接 —— 实现点击前中后变色
浅浅记录下 <style type"text/css"> a:link {color: yellow; /*未访问链接颜色*/ }a:visited {color: red; /*已访问链接颜色*/ }a:hover {color: blue; /*鼠标移动到链接颜色*/text-decoration: underline; }a:active {color: orange; /*鼠标点击时颜色*/ }a…...
多头部适配器架构优化电商推荐系统性能
1. 项目背景与核心价值推荐系统作为互联网内容分发的核心引擎,其性能优化一直是工业界的研究热点。传统推荐模型通常采用单一模型结构处理所有用户请求,这种"一刀切"的方式在面对多样化用户群体时存在明显的效率瓶颈。我们团队在实际业务中发现…...
I-CORE中微爱芯 AIP1629ASA32.TB SOP-32 LED驱动
特性采用功率CMOS工艺显示模式:14段8位键扫描:82bit辉度调节电路(占空比8级可调)串行接口(CLK、DIO、STB)振荡方式:RC振荡(450KHz5%)内置上电复位电路封装形式࿱…...
Creality Sermoon S1双模3D扫描仪开箱与核心技术解析
1. Creality Sermoon S1高端3D扫描仪开箱与规格解析作为一名长期关注3D打印和数字化建模的技术爱好者,最近我有幸拿到了Creality最新推出的Sermoon S1混合式3D扫描仪。这款设备集成了蓝光激光线和红外结构光两种扫描模式,官方标称精度高达0.02mm…...
中国词元:构建自主AI生态的三大支柱与商业实践
在全球化AI竞赛进入深水区的当下,中国科技企业正在探索一条独特的生态构建路径。中国词元(Chinese Tokens)概念应运而生,它不仅仅是一个技术术语,更代表着一套完整的自主可控AI生态体系。这一体系由三大核心要素构成&a…...
FreeModbus释放底层的 TCP 监听端口
背景 有Modbus和scpi两种协议,在使用过程中要切换,每次切换要给给对应协议绑定端口 问题 在每次切换协议之前都这样操作,把所有连接都关闭仔进行重新绑定// 尝试禁用ModbuseMBDisable();// 尝试关闭SCPI服务器的监听和客户端连接if (server_s…...
上海软件定制开发中的兼容性设计与多端适配技术方案解析
在上海软件定制开发的实际项目中,客户需求往往不会局限于单一终端。一个典型的企业级项目,可能同时要求覆盖Web管理后台、微信小程序、安卓App,甚至还要对接物联网设备或大屏展示系统。多端适配和跨平台兼容性,已经从"加分项…...
ARM架构FAR寄存器解析:异常处理与虚拟化关键机制
1. ARM架构异常处理机制概述在ARMv8/ARMv9架构中,异常处理机制是系统可靠性和安全性的基石。当处理器执行过程中遇到无法继续正常执行的状况时(如非法内存访问、未对齐访问、指令执行错误等),会触发异常并跳转到预先定义的异常处理…...
拆解维修指南:当你的大扭矩电动扳手‘罢工’,如何自己动手排查行星齿轮与谐波传动故障?
大扭矩电动扳手行星齿轮与谐波传动故障排查实战手册 当220V大扭矩电动扳手突然"罢工",输出无力、发出异响或完全卡死时,多数故障都隐藏在行星齿轮组和谐波传动系统中。本文将带您深入传动机构内部,用维修工的视角拆解这些精密部件&…...
ComfyUI-BiRefNet-ZHO:5分钟掌握AI图像视频抠图终极解决方案
ComfyUI-BiRefNet-ZHO:5分钟掌握AI图像视频抠图终极解决方案 【免费下载链接】ComfyUI-BiRefNet-ZHO Better version for BiRefNet in ComfyUI | Both img & video 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-BiRefNet-ZHO 还在为繁琐的背景去…...
数据要素市场亟需“成熟度标尺”!专知智库联合编制100本白皮书,邀您共同定义行业标准
数据要素市场亟需“成熟度标尺”!专知智库联合编制100本白皮书,邀您共同定义行业标准从数据交易所到数据商,从资产评估到安全合规——覆盖十大板块、100本成熟度认证白皮书,构建数据要素市场的完整能力标尺2026年,数据…...
