【Linux】网络瑞士军刀netcat(nc):用于调试和调查网络,传输文件,设置端口监听,也可作为TCP、UDP的服务器和客户端,从下载、安装、入门到精通的教程
创始人
2024-09-25 09:49:27
0

netcat(通常简称为 nc)是一个功能强大的网络工具,常被称为“网络瑞士军刀”。它可以用来读取和写入网络连接,使用 TCP 或 UDP 协议。netcat 可以用于调试和调查网络,传输文件,设置端口监听,甚至可以作为一个简单的服务器或客户端。本文将详细介绍 netcat 的安装、基本使用方法以及一些高级用法,并通过具体示例帮助你快速上手。


🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:gylzbk

💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

在这里插入图片描述

【Linux】网络瑞士军刀netcat(nc):用于调试和调查网络,传输文件,设置端口监听,也可作为TCP、UDP的服务器和客户端,从下载、安装、入门到精通的教程

  • 一、安装 Netcat
    • 1. 在 Debian/Ubuntu 上安装 Netcat
    • 2. 在 CentOS/RHEL 上安装 Netcat
    • 3. 在 Fedora 上安装 Netcat
    • 4. 在 macOS 上安装 Netcat
    • 5. 在 Windows 上安装 Netcat
  • 二、基本使用方法
    • 1. 作为客户端连接到服务器
      • 示例
    • 2. 作为服务器监听端口
      • 示例
    • 3. 传输文件
      • 发送文件
        • 示例
      • 接收文件
        • 示例
    • 4. 端口扫描
      • 示例
  • 三、高级用法
    • 1. 创建一个简单的聊天服务器和客户端
      • 服务器端
      • 客户端
      • 示例
    • 2. 使用 `-e` 参数执行命令
      • 服务器端
      • 客户端
      • 示例
    • 3. 使用 `-u` 参数进行 UDP 连接
      • 服务器端
      • 客户端
      • 示例
  • 四、总结

在这里插入图片描述

一、安装 Netcat

netcat 有多个版本,最常见的是 netcat-traditionalnetcat-openbsd。两者提供的功能略有不同,但基本用法相似。

1. 在 Debian/Ubuntu 上安装 Netcat

你可以选择安装 netcat-traditionalnetcat-openbsd

# 安装 netcat-traditional sudo apt-get update sudo apt-get install netcat-traditional  # 安装 netcat-openbsd sudo apt-get update sudo apt-get install netcat-openbsd 

2. 在 CentOS/RHEL 上安装 Netcat

sudo yum install nc 

3. 在 Fedora 上安装 Netcat

sudo dnf install nc 

4. 在 macOS 上安装 Netcat

macOS 用户可以使用 Homebrew 进行安装:

brew install netcat 

5. 在 Windows 上安装 Netcat

Windows 用户可以从 Netcat for Windows 下载适用于 Windows 的可执行文件。

二、基本使用方法

1. 作为客户端连接到服务器

要连接到一个远程服务器,可以使用以下命令:

nc   

示例

nc google.com 80 

这个命令将连接到 google.com 的 80 端口(HTTP 端口)。

2. 作为服务器监听端口

要在本地机器上监听一个端口,可以使用以下命令:

nc -l  

示例

nc -l 12345 

这个命令将监听本地机器的 12345 端口,等待连接。

3. 传输文件

可以使用 netcat 进行文件传输。以下是发送和接收文件的示例:

发送文件

cat file.txt | nc   
示例
cat file.txt | nc 192.168.1.100 12345 

接收文件

nc -l  > file.txt 
示例
nc -l 12345 > file.txt 

4. 端口扫描

netcat 还可以用来进行简单的端口扫描:

nc -zv  - 

示例

nc -zv 192.168.1.1 20-80 

这个命令将扫描 192.168.1.1 的 20 到 80 端口,查看哪些端口是开放的。

三、高级用法

1. 创建一个简单的聊天服务器和客户端

服务器端

nc -l 12345 

客户端

nc  12345 

示例

在服务器端运行:

nc -l 12345 

在客户端运行:

nc 192.168.1.100 12345 

现在你可以在服务器和客户端之间发送消息。

2. 使用 -e 参数执行命令

netcat 允许你使用 -e 参数在连接时执行命令。这可以用来创建一个简单的反向 shell。

服务器端

nc -l -p 12345 -e /bin/bash 

客户端

nc  12345 

示例

在服务器端运行:

nc -l -p 12345 -e /bin/bash 

在客户端运行:

nc 192.168.1.100 12345 

现在你可以在客户端上控制服务器端的 shell。

3. 使用 -u 参数进行 UDP 连接

默认情况下,netcat 使用 TCP 连接。可以使用 -u 参数进行 UDP 连接:

服务器端

nc -u -l 12345 

客户端

nc -u  12345 

示例

在服务器端运行:

nc -u -l 12345 

在客户端运行:

nc -u 192.168.1.100 12345 

现在你可以在服务器和客户端之间发送 UDP 数据包。

四、总结

netcat 是一款功能强大的网络工具,适用于从简单网络连接测试到复杂的文件传输和端口扫描任务。通过本文的介绍和具体示例,希望能够帮助你熟练掌握 netcat 的基本用法和一些高级功能,为你的网络调试和故障排除工作提供有力支持。

相关内容

热门资讯

备忘安卓系统哪个好用,好用软件... 手机备忘录,这个小小的功能,却在我们忙碌的生活中扮演着大角色。想象每天的工作、学习、生活琐事,如果没...
返回老系统安卓手机,体验安卓老... 亲爱的手机控们,你是否也有过这样的经历:新系统刚出来的时候,你兴奋地升级了,结果发现,哎呀妈呀,这新...
安卓系统版本太不推送,用户等待... 亲爱的手机控们,你们有没有发现,最近安卓系统更新好像有点不给力呢?版本更新速度慢得让人抓狂,让人不禁...
ios系统和安卓图文,iOS与... 你有没有想过,为什么你的手机屏幕上总是出现那么多的图标和菜单?其实,这一切都离不开那个默默无闻的“灵...
win系统下切换安卓,双系统体... 亲爱的电脑迷们,你是否曾想过,在Windows系统的世界里,也能轻松穿梭到安卓的海洋?没错,今天我要...
电脑安卓国产双系统,一机多能新... 你有没有想过,你的电脑也能变身成安卓手机呢?没错,就是那种可以下载应用、玩游戏、看视频的安卓手机!今...
安卓系统u盘目录,轻松管理文件... 你有没有想过,你的安卓手机里那个小小的U盘,竟然能藏下那么多的秘密?今天,就让我带你一探究竟,揭开安...
安卓系统面容账单识别,安全便捷... 你有没有发现,现在手机里的新功能越来越神奇了?比如说,安卓系统里的面容账单识别,简直就像是个贴心的私...
CARLIFE安卓系统手机下载... 亲爱的车主朋友们,你们是不是也和我一样,对车载系统有着超乎寻常的热爱呢?想象在驾驶的过程中,一边享受...
安卓导航系统语言,智能导航体验... 你有没有发现,现在手机导航系统越来越智能了?尤其是安卓手机,导航功能强大到让人惊叹。今天,就让我带你...
蓝光机带安卓系统,创新科技引领... 你有没有想过,家里的电视是不是也能像手机一样,随时随地下载各种应用,畅游网络世界呢?现在,蓝光机带安...
安卓系统跑步音乐app,运动与... 你有没有发现,现在跑步已经不仅仅是一项运动了,它还成了一种潮流,一种生活态度。想象一边挥洒汗水,一边...
安卓推送系统默认通道,揭秘默认... 你有没有发现,现在手机上的App推送消息真是无处不在啊!有时候,你甚至还没来得及看一眼,手机就“叮咚...
安卓系统老杀进程,lmkd进程... 你有没有发现,你的安卓手机有时候就像个调皮的小孩子,总是时不时地“杀”掉一些后台运行的进程。这可真是...
远程温控系统安卓界面,远程温控... 你有没有想过,在寒冷的冬日里,不用离开温暖的被窝,就能轻松调节家里的暖气温度?或者是在炎炎夏日,你在...
安卓手机申请鸿蒙系统,详细步骤... 你有没有想过,你的安卓手机也能变身成为超级英雄?没错,就是那个传说中的鸿蒙系统!听说这个系统能让你的...
诺基亚怎么变安卓系统,转换之路... 你有没有想过,把你的诺基亚手机变成安卓系统,让它焕发第二春呢?想象原本只认识Windows系统的诺基...
安卓系统手表京东自营,安卓系统... 你有没有想过,手腕上戴一块智能手表,就像是给你的生活添了一抹科技的色彩呢?想象在忙碌的都市生活中,你...
安卓系统语言设置选项,个性化您... 亲爱的手机控们,你们有没有遇到过这种情况:看着手机上的英文菜单,一脸懵逼,心里默默念叨:“这啥玩意儿...
修改安卓系统内存位置,释放手机... 手机内存不够用,是不是让你头疼得要命?别急,今天就来教你一招,轻松修改安卓系统内存位置,让你的手机瞬...