快速获取 IP 地址
IP 地址可以分为两类,公用和私有(专用)。公用 IP 是唯一的 IP 地址,可以从 Internet 访问。专用 IP 地址保留供您专用网络内部使用,而不会直接暴露给 Internet。
本文将介绍几种确定 Linux 系统的公共 IP 地址和私有 IP 地址的不同方法。(当然有些在windows下也是可以的)
查找你的私有 IP 地址
专用 IP 地址不可通过 Internet 路由,并且只能在本地网络内工作。通常,专用 IP 地址是由路由器分配给本地网络中的每个设备的。这为本地网络中的设备(例如电话、笔记本电脑、智能电视、打印机、媒体中心等)提供了唯一的 IP 地址。本地网络上的设备通过 NAT(网络地址转换)连接到 Internet。
以下 IPv4 地址范围是为专用网络保留的:
10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
你可以通过使用诸如 ip
、ifconfig
或 hostname
命令查询网络堆栈确定系统的私有 IP 地址。
在 Linux 中,用于显示和配置网络接口的标准工具是 ip
。
要显示所有网络接口和关联的 IP 地址的列表,请键入以下命令:
在 Linux 中,用于显示和配置网络接口的标准工具是 ip
。
要显示所有网络接口和关联的 IP 地址的列表,请键入以下命令:
ip addr
你还可以使用以下命令来显示私有 IP 地址:
$ hostname -I $ ifconfig
查找你的公共 IP 地址
确定公共 IP 地址可以通过 HTTP/HTTPS
或 DNS
协议联系远程服务器,并从远程服务器响应中获取 IP 地址。
如果你是在没有 GUI 的 Linux 服务器上获取你分配到的公网 IP 地址,你可以使用命令行工具 dig
、curl
和 wget
等来获取。
大多数 DNS 提供商(例如:OpenDNS 和 Google)都允许你查询其服务器并获取你的公共 IP 地址。你可以使用以下任何命令来获取公网 IP:
$ dig ANY +short @resolver2.opendns.com myip.opendns.com $ dig ANY +short @resolver2.opendns.com myip.opendns.com $ dig ANY +short @ns1-1.akamaitech.net ANY whoami.akamai.net
另外,有许多在线 HTTP/HTTPS
服务可以返回你的公共 IP 地址。这里是其中的一些:
$ curl -s http://tnx.nl/ip $ curl -s https://checkip.amazonaws.com $ curl -s api.infoip.io/ip $ curl -s ip.appspot.com $ wget -O - -q https://icanhazip.com/
$ curl ip.sb
为了方便使用,你还可以创建一个别名来方便查询。
alias pubip='dig ANY +short @resolver2.opendns.com myip.opendns.com'
现在,你要查找公共 IP 时,只需键入 pubip
命令即可。
参考链接:https://mp.weixin.qq.com/s/dkVd0eQfzGHxM3SQ6picuQ
原文地址:https://www.cnblogs.com/lfri/p/12003102.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Handler实现线程之间的通信下载文件动态更新进度条
- Android下Button实现图文混排效果
- android handler.post和handler.sendMessage的区别和联系
- 3小时带你开发一款商城类小程序(零基础入门小程序系列)
- Android 隐式Intent的实例详解
- Android编程使用加速度传感器实现摇一摇功能及优化的方法详解
- 微信小程序分页加载数据~上拉加载更多~小程序云数据库的分页加载
- TextView实现跑马灯效果 就这么简单!
- Android自带emoji表情的使用方法详解
- Android EditText实现输入表情
- Android编程实现使用Intent传输包含自定义类的ArrayList示例
- EditText实现输入限制和校验功能实例代码
- java零基础入门006~springboot实现多文件的上传(java多文件的上传)
- Android编程实现随机生成颜色的方法示例
- Android中将Bitmap对象以PNG格式保存在内部存储中的方法