Linux下MyIpAdd库的使用

一、MyIpAdd库简介

MyIpAdd库是一个纯C++库,可以用它获取我们的公网IP地址。其github地址为:https://github.com/felmur/MyIpAdd

二、下载编译MyIpAdd源码

https://github.com/felmur/MyIpAdd 下载MyIpAdd源码:

解压,进入源码目录,可以看到其目录结构如下:

编译:

bash 复制代码
cmake . -DCMAKE_INSTALL_PREFIX=$(pwd)/install
make
make install

然后源码目录下会生成MyIpAdd的库文件libMyIpAdd.so

三、MyIpAdd的使用例子

以C++为例,编写一个使用示例。main.cpp内容如下:

cpp 复制代码
#include <iostream>
#include <myipadd.h>

using namespace std;

int main()
{
    MyIpAdd * m = new MyIpAdd();

    cout << "My public ip address is: '" << m->ip << "'" << endl;

    return 0;
}

编译:

bash 复制代码
g++ main.cpp -o main -g -IXXX/MyIpAdd-master -LXXX/MyIpAdd-master -lMyIpAdd

运行,效果如下。可以看到本机的公网ip被成功打印出来了:

该ip和通过百度查询到的公网ip一致:

相关推荐
梦·D·1 分钟前
安全运维工具箱sskit_v1.0.3 部署
运维
CDN3602 分钟前
DNS 负载均衡技术架构与调度策略解析
运维·架构·负载均衡
忡黑梨3 分钟前
eNSP_路由策略
运维·服务器·网络·华为·智能路由器·负载均衡
日取其半万世不竭7 分钟前
PostgreSQL 云服务器安装配置指南:从零开始搭建生产数据库
服务器·数据库·postgresql
IT WorryFree15 分钟前
FGT-KVM 完整部署极简教程(CentOS 7 + KVM 环境)
linux·运维·centos
上海云盾安全满满17 分钟前
网站被攻击了,高防CDN相比与高防服务器有什么优点
运维·服务器
一袋米扛几楼9820 分钟前
【报错问题】彻底解决 TypeScript 报错 TS2769: No overload matches this call (JWT 篇)
linux·javascript·typescript
@encryption20 分钟前
计算机网络 --- NAT
运维·服务器·计算机网络
goyeer23 分钟前
【ITIL4】32服务实践 - 服务变更管理
linux·运维·服务器·数字化·价值·itil
程序员Linc23 分钟前
双击nginx.exe5次之后,我的项目管理平台挂了
运维·nginx