news 2026/6/15 1:48:48

解决 Oracle 监听外网 IP 及腾讯云防火墙配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
解决 Oracle 监听外网 IP 及腾讯云防火墙配置

使用127.0.0.1,那个状态由closed 变为open,变为正常,以下是处理办法。

这种情况的核心原因是 Oracle 监听器仅监听了本地回环地址(127.0.0.1),没有监听服务器的外网 IP 地址,导致外部(包括外网 IP 自身)无法通过外网网 IP 访问 1521 端口。具体分析如下:

1. 监听器的“监听地址”限制

Oracle 监听器(Listener)启动时会绑定特定的 IP 地址,默认可能只绑定 127.0.0.1(本地回环地址),这意味着:

只有通过 127.0.0.1:1521 访问时,监听器才会响应(所以 nmap 127.0.0.1 -p 1521 显示 open)。

当使用服务器的外网 IP(或内网 IP)访问 外网IP:1521 时,由于监听器没有绑定该 IP,端口处于“无服务监听”状态,因此 nmap 扫描显示 closed。

2. 验证监听器的监听地址

在服务器本地执行 lsnrctl status 命令,查看监听器的“监听地址”信息,例如:

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) # 仅监听本地回环

如果 HOST 字段是 127.0.0.1,则确认监听器未绑定外网 IP。

3. 解决方法:让监听器监听外网 IP

需修改监听器配置文件(listener.ora),让其绑定服务器的外网 IP 或所有 IP(0.0.0.0):

步骤 1:找到 listener.ora 文件

路径通常为:$ORACLE_HOME/network/admin/listener.ora(Linux/Unix)或 %ORACLE_HOME%\network\admin\listener.ora(Windows)。

若找不到,可通过 lsnrctl status 命令的输出查看配置文件路径。

步骤 2:修改监听器配置

打开 listener.ora,找到监听器的 ADDRESS 配置,将 HOST 改为服务器的外网 IP 或 0.0.0.0(表示监听所有可用 IP):

# 原配置(可能只监听127.0.0.1)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

)

)

# 修改后(监听所有IP)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521)) # HOST改为0.0.0.0

)

)

步骤 3:重启监听器

# 停止监听器

lsnrctl stop

# 启动监听器(使配置生效)

lsnrctl start

步骤 4:验证

再次执行 lsnrctl status,确认监听地址变为 0.0.0.0 或外网 IP,例如:

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521))) # 监听所有IP

此时再用外网 IP 扫描 nmap -Pn 外网IP -p 1521,应该会显示 open。

额外注意:腾讯云防火墙规则

即使监听器配置正确,仍需确保腾讯云轻量云的 防火墙规则已允许 1521 端口的入站访问(来源设为 0.0.0.0/0,协议 TCP),否则端口可能被云厂商防火墙拦截(显示 filtered 而非 closed,但需提前确认)。

通过以上步骤,即可解决“本地能访问、外网 IP 扫描显示关闭”的问题。

辅助说明:

nmap 命令,需要下载一下安装后才能正常使用。

如果提示 “找不到 nmap 命令”,说明你的系统中没有安装 nmap 工具,需要先安装它。以下是不同系统的安装方法:

1. Windows 系统

下载安装包:访问 nmap 官网(https://nmap.org/download.html),选择适合 Windows 的版本(如nmap-7.94-setup.exe)。

安装:双击安装包,按提示完成安装(建议勾选 “Add Nmap to the system PATH for all users”,方便在命令行直接使用nmap命令)。

验证:安装完成后,打开 CMD 或 PowerShell,输入nmap --version,若显示版本信息则安装成功。

2. Linux 系统(以 Ubuntu/Debian 为例)

打开终端,执行以下命令:

sudo apt update # 更新软件源

sudo apt install nmap # 安装nmap

验证:输入nmap --version,显示版本信息即成功。

3. macOS 系统

方法 1(使用 Homebrew):

先安装 Homebrew(若未安装,终端执行

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

),再安装 nmap:

brew install nmap

方法 2(直接下载安装包):从 nmap 官网下载 macOS 版本,按提示安装。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 13:25:02

从同步耦合到异步解耦:消息中间件如何重塑系统间的通信范式?

当成百上千的服务需要相互协作时,它们之间的通信模式变得至关重要。如果服务间采用紧密耦合的同步调用,一个服务的延迟或故障,就可能引发连锁反应,导致系统性的“雪崩”。消息中间件正是为了打破这种刚性依赖而生。它在服务之间建…

作者头像 李华
网站建设 2026/6/15 1:16:29

打卡信奥刷题(2534)用C++实现信奥 P2039 [AHOI2009] 跳棋

P2039 [AHOI2009] 跳棋 题目描述 在一个 111 行 NNN 列(NNN 是奇数)的棋盘上,有 KKK 个格子是红色的。这种情况下,你有一个跳棋在最左端的格子上。你的目标是将它移动到最右边的格子,在开始移动之间,你可以…

作者头像 李华
网站建设 2026/6/13 18:12:54

微服务链路追踪环境搭建终极指南:Docker一键部署全栈方案

微服务链路追踪环境搭建终极指南:Docker一键部署全栈方案 【免费下载链接】opentelemetry-collector OpenTelemetry Collector 项目地址: https://gitcode.com/GitHub_Trending/op/opentelemetry-collector 还在为分布式系统中的调用链追踪头疼吗&#xff1f…

作者头像 李华
网站建设 2026/6/12 9:20:10

Feather图标库完整使用指南:从入门到精通

Feather图标库完整使用指南:从入门到精通 【免费下载链接】feather 项目地址: https://gitcode.com/gh_mirrors/fea/feather 在开发现代Web应用时,图标的使用无处不在。你是否曾经遇到过这样的困扰:项目中的图标风格不统一、图标文件…

作者头像 李华
网站建设 2026/6/11 15:03:42

改善深层神经网络 第二周:优化算法(一)Mini-batch 梯度下降

1. Mini-batch 梯度下降法其实我们早就在使用这个方法了,现在来系统的阐述一下。如果你有些遗忘了梯度下降法本身的概念,可以回看之前的笔记:梯度下降法而发展出的随机梯度,Mini-batch 梯度,batch 梯度只是一次迭代中使…

作者头像 李华
网站建设 2026/6/12 12:23:16

AutoGPT事件驱动设计:通过消息队列实现松耦合

AutoGPT事件驱动设计:通过消息队列实现松耦合 在构建现代自主智能体的实践中,一个日益凸显的问题是:当LLM(大语言模型)开始承担复杂任务规划与执行控制时,传统的同步调用架构很快暴露出瓶颈。想象一下&…

作者头像 李华