我敢说,这是网工必须要会的网络端口知识
moboyou 2025-03-16 14:59 53 浏览
号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
下午好,我的网工朋友。
网络端口是计算机网络中一个非常重要的概念,它用于标识特定的应用程序或服务。
作为网工,端口也是平时工作中经常接触的部分,了解网络端口的基本知识对于确保网络的正常运行和安全性十分重要。
今天就来讲讲那些网工必知的端口知识,从网络端口的基础知识、常见服务及其端口号、端口扫描与安全、端口转发与NAT到实际应用案例,统统理清。
今日文章阅读福利:《全网最全-网络端口号汇总(27页)》
私信发送暗号“端口”,即可限时获取资料哈。
如果想从0到1系统学习,也欢迎私信我,告知学习意向,我会为你推荐最适合你的方式。
01 网络端口基础
网络端口是用于标识特定应用程序或服务的逻辑地址,通常与IP地址一起使用。每个端口都有一个唯一的编号,范围从0到65535。
端口用于区分同一台主机上的不同服务,确保数据包能够正确地发送到指定的应用程序。
例如,当用户访问一个网站时,浏览器会通过HTTP协议连接到服务器的80端口;当用户通过SSH进行远程登录时,客户端会连接到服务器的22端口。
01 类型:
- 熟知端口(0-1023):这些端口由IANA(互联网号码分配机构)分配,用于常见的服务。例如,HTTP使用80端口,HTTPS使用443端口。
- 注册端口(1024-49151):这些端口可以由用户或组织注册,用于特定的服务。这些端口通常用于非标准服务或自定义应用。
- 动态/私有端口(49152-65535):这些端口主要用于临时连接,通常由操作系统动态分配。例如,客户端在发起连接时可能会使用这些端口。
02 常见网络服务及其端口号
01 Web服务
HTTP (80):超文本传输协议,用于未加密的Web浏览。
HTTPS (443):安全的超文本传输协议,使用SSL/TLS加密,提供更安全的Web浏览。
02 邮件服务
SMTP (25):简单邮件传输协议,用于发送电子邮件。
POP3 (110):邮局协议版本3,用于从邮件服务器接收电子邮件。
IMAP (143):互联网消息访问协议,用于从邮件服务器接收电子邮件,并支持离线和在线模式。
03 文件传输
FTP (21):文件传输协议,用于上传和下载文件。
SFTP (22):通过SSH进行安全文件传输,基于SSH协议。
SCP (22):安全复制协议,用于在主机之间安全地复制文件,基于SSH协议。
04 远程管理
SSH (22):安全Shell协议,用于远程登录和管理。
Telnet (23):不安全的远程登录协议,通常建议使用SSH替代。
RDP (3389):远程桌面协议,用于Windows远程桌面连接。
05 数据库服务
MySQL (3306):MySQL数据库服务,默认端口。
PostgreSQL (5432):PostgreSQL数据库服务,默认端口。
MongoDB (27017):MongoDB数据库服务,默认端口。
Oracle (1521):Oracle数据库服务,默认端口。
06 其他常用服务
DNS (53):域名系统,用于解析域名。
NTP (123):网络时间协议,用于同步时间。
SNMP (161/162):简单网络管理协议,用于网络设备监控。
DHCP (67/68):动态主机配置协议,用于自动分配IP地址。
TFTP (69):简单文件传输协议,用于无盘工作站启动等场景。
VNC (5900):虚拟网络计算,用于远程桌面控制。
07 示例:
HTTP (80):Web浏览器访问网站时使用的端口。例如,当你在浏览器中输入http://example.com时,浏览器会连接到该网站的80端口。
HTTPS (443):安全的Web浏览,使用SSL/TLS加密。例如,当你访问https://example.com时,浏览器会连接到该网站的443端口。
FTP (21):文件传输协议,用于上传和下载文件。例如,使用FTP客户端连接到服务器时,会连接到21端口。
SSH (22):安全Shell协议,用于远程登录和管理。例如,使用SSH客户端连接到远程服务器时,会连接到22端口。
03 端口扫描与安全
端口扫描是一种网络探测技术,通过发送探测数据包来检测目标主机上开放的端口。
攻击者可以利用端口扫描来发现目标系统上的漏洞和服务,从而进行进一步的攻击。常见的端口扫描方法包括全连接扫描、半连接扫描(SYN扫描)、UDP扫描等。
01 工具:
nmap:
nmap是一款功能强大的端口扫描和网络探测工具,支持多种扫描技术,如TCP SYN扫描、UDP扫描、操作系统检测等。nmap可以生成详细的报告,帮助用户了解目标系统的开放端口和服务。
示例:
使用nmap进行基本的端口扫描。
nmap 192.168.1.1
高级用法:
使用nmap进行特定端口范围的扫描,并输出详细信息。
nmap -p 1-1024 -sV 192.168.1.1
netcat (nc):
netcat是一个多功能的网络工具,可以用于端口扫描、数据传输、端口监听等多种用途。netcat简单易用,适合快速测试和调试。
示例:
使用netcat进行端口扫描。
nc -zv 192.168.1.1 1-1024
02 安全措施:
防火墙:
配置防火墙规则,限制不必要的端口访问。例如,在Linux系统中,可以使用iptables命令来配置防火墙规则。
示例:
允许SSH访问(22端口),拒绝其他所有入站流量。
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP
入侵检测系统 (IDS):
监控网络流量,检测异常行为。IDS可以实时分析网络流量,识别潜在的攻击并发出警报。
示例:
使用Snort作为入侵检测系统。
snort -c /etc/snort/snort.conf -i eth0
定期审计:
定期检查开放端口和服务,关闭不必要的端口。可以使用脚本或工具自动化这一过程。
示例:
编写一个简单的Bash脚本来检查开放的端口。
#!/bin/bash
for port in {1..1024}; do
if netstat -tuln | grep -q ":$port "; then
echo "Port $port is open"
fi
done
04 端口转发与NAT
端口转发是一种网络技术,用于将一个端口上的请求转发到另一个端口或另一台主机。这种技术常用于家庭和企业网络中,使得外部用户能够访问内部网络中的服务。
端口转发通常在路由器上配置,通过将外部IP地址和端口映射到内部IP地址和端口来实现。
NAT是一种将内部网络的私有IP地址转换为公共IP地址的技术,从而允许内部网络设备通过单个公共IP地址访问互联网。NAT可以分为几种类型:
- 静态NAT:将内部私有IP地址一对一地映射到外部公共IP地址。
- 动态NAT:从内部私有IP地址池中动态分配外部公共IP地址。
- PAT (端口地址转换):也称为NAT重载,允许多个内部私有IP地址共享一个外部公共IP地址,通过端口号进行区分。
01 应用场景:
家庭网络:
在家庭网络中,通常只有一个公共IP地址。通过端口转发,可以将外部对特定端口的请求转发到内部网络中的特定设备。例如,将外部对80端口的请求转发到运行Web服务器的内部计算机。
示例:
- 在家庭路由器上配置端口转发,将外部对80端口的请求转发到内部IP地址192.168.1.100的80端口。
- 登录路由器管理界面。
- 进入“端口转发”或“虚拟服务器”设置。
- 添加新的端口转发规则:
- 外部端口:80
- 内部IP地址:192.168.1.100
- 内部端口:80
- 协议:TCP
- 保存设置并重启路由器(如果需要)。
企业网络:
在企业网络中,NAT被广泛用于多个内部设备共享一个或几个公共IP地址。通过NAT,企业可以节省公共IP地址资源,并提高网络安全性。
示例:
- 在企业网络中配置NAT,使得所有内部设备的流量通过一个公共IP地址访问互联网。
- 在企业路由器或防火墙上启用NAT功能。
- 配置内部网络的私有IP地址范围。
- 配置外部公共IP地址。
- 设置NAT规则,将内部私有IP地址转换为外部公共IP地址。
- 保存设置并测试连接。
原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
- 上一篇:telnet等常用端口号
- 下一篇:python oracle 连接池方式
相关推荐
- 产品页不显示价格?用这招让独立站转化率翻倍
-
“客户急得直拍桌子:‘为什么美国用户点进来看不到价格?’”建站设计师小夏盯着屏幕上的报错提示——结构化数据没写对,Google爬虫根本没抓到价格信息。这是一家卖手工珠宝的跨境店,主推定制款,价格因材质...
- FOGProject 1.5.10 开源 可以使用PXE、PartClone和Web GUI
-
FOGProject起点介绍FOG是一个免费的开源克隆/镜像/救援套件/库存管理系统。FOG可以使用PXE、PartClone和WebGUI来对WindowsXP、Vista、Windows7...
- AI+隐私计算:淘宝API的下一站,数据开放与安全的双重革命
-
淘宝API分类全解析:从商品管理到智能营销的接口生态引言在电商行业数字化转型中,淘宝API(ApplicationProgrammingInterface)作为连接平台与开发者的技术桥梁,已成为实...
- PHP MySQLi基础教程 MySQL 创建数据库
-
数据库存有一个或多个表。你需要CREATE权限来创建或删除MySQL数据库。使用MySQLi和PDO创建MySQL数据库CREATEDATABASE语句用于在MySQL中创...
- PHP跑不动?服务器慢成蜗牛,客户投诉不断.
-
最近公司电商系统总卡,用户下单页面半天打不开,客服电话快被打爆。技术主管说PHP性能不行,我们几个新来的程序员被拉来紧急开会。老王翻出一本破旧的《高性能PHP开发》说:"这本书早该读了"...
- PHP+UniApp:低成本打造外卖系统横扫App+小程序+H5全平台
-
在餐饮行业数字化转型中,外卖系统开发常面临两大痛点:高昂的开发成本(需独立开发App、小程序、H5)和多端维护的复杂性。PHP+UniApp的组合通过技术复用与跨平台能力,为中小商家和开发者提供了“降...
- PHP分布式锁超卖方案以及高并发优化
-
在PHP的生态中,是通过多进程的方式去优化程序性能的。在单机架构情况下防止超卖不像JAVA那样可以使用自身的锁机制实现。需要借助第三方程序来实现,如:数据库、Redis等。接下来我们通过一个基于Re...
- PHP实战经验之系统如何支撑高并发
-
高并发系统各不相同。比如每秒百万并发的中间件系统、每日百亿请求的网关系统、瞬时每秒几十万请求的秒杀大促系统。他们在应对高并发的时候,因为系统各自特点的不同,所以应对架构都是不一样的。另外,比如电商平台...
- PHP高并发架构:三招让Redis与MySQL数据强同步(含黑科技方案)
-
技术段位:百万级并发架构师必修实战价值:数据不一致窗口期<50ms|零代码侵入方案|抗亿级流量冲击一、颠覆认知:99%的项目在用错误方案(你中招了吗?)1.经典双删策略的致命缺陷//...
- 基于Python的仓库库存管理系统的设计和实现
-
《基于Python的仓库库存管理系统的设计和实现》该项目采用技术Python的django框架、mysql数据库,项目含有源码、论文、PPT、配套开发软件、软件安装教程、项目发布教程、核心代码介绍视...
- 如何在Redis中处理并发写入php电商网站库存超卖示例
-
经常会遇到需要在项目中处理并发的情况。今天就用redis来处理并发,解决电商项目中的库存超卖常见需求。项目背景电商网站需要处理高并发的购买请求,每个请求都会减少对应商品的库存数量。为了避免库存超卖,我...
- 【新书推荐】6.1 鼠标基础知识(鼠标的基础操作)
-
第六章鼠标Windows程序以其友好的用户交互体验著称。键盘和鼠标都是用户与Windows程序交互的工具。键盘一般被当作用来输入和管理文本数据的设备,鼠标则被看作是用来绘制和处理图形对象的设备。上一...
- FFmpeg学习(1)开篇(ffmpeg 教程)
-
FFmpeg学习(1)开篇FFmpeg学习(2)源码编译,环境配置为什么要学习FFmpeg本人希望打算深入研究音视频领域,音视频领域的内容很多,我自己打算从几方面循序渐进:FFmpeg常用功能实践,...
- 华纳云:服务器监控系统中最常用的性能指标有哪些
-
服务器监控系统通常用于监视服务器的性能和健康状况,以确保其正常运行并及时发现问题。以下是服务器监控系统中最常用的性能指标: 1.CPU使用率:CPU使用率是指服务器上的中央处理器(CPU...
- 实战线上 Linux 服务器深度优化指南
-
1.系统基础配置优化优化目标:建立统一、安全、稳定的系统基础环境,为后续优化奠定基础。1.1规范化主机命名采用"功能-地域-机房-机柜-编号"命名法,这样便于资产管理和定位。#采用...
- 一周热门
- 最近发表
- 标签列表
-
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle两个表 (20)
- oracle 数据库 字符集 (20)
- matlab化简多项式 (20)
- 多线程的创建方式 (29)
- 多线程 python (30)
- java多线程并发处理 (32)
- 宏程序代码一览表 (35)
- c++需要学多久 (25)
- css class选择器用法 (25)
- css样式引入 (30)
- css教程文字移动 (33)
- php简单源码 (36)
- php个人中心源码 (25)
- php小说爬取源码 (23)
- 云电脑app源码 (22)
- html画折线图 (24)
- docker好玩的应用 (28)
- linux有没有pe工具 (34)
- mysql数据库源码 (21)
- php开源万能表单系统源码 (21)