【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 的基本用法和一些高级功能,为你的网络调试和故障排除工作提供有力支持。

相关内容

热门资讯

汽车导航那改安卓系统,智能驾驶... 你有没有想过,你的汽车导航系统是不是也该来个“换脸”大变身呢?没错,就是从那个有点“老气横秋”的安卓...
安卓系统应用更改签名,揭秘签名... 你有没有想过,你的安卓手机里那些可爱的应用,它们是怎么保持自己的身份,不被误删或者误更新的呢?没错,...
攻击安卓系统电子书,深度解析潜... 你知道吗?在这个数字化时代,电子书可是越来越受欢迎了。不过,你知道吗?有些不法分子竟然敢攻击安卓系统...
鸿蒙系统复制安卓了吗,揭秘其与... 最近手机圈可是热闹非凡呢!华为的鸿蒙系统成了大家热议的焦点。有人说,鸿蒙系统是不是复制了安卓的精髓?...
vivox27安卓11系统,安... 你知道吗?最近手机界可是热闹非凡呢!vivo X27这款手机,自从升级到了安卓11系统,简直就像脱胎...
酷猫斗牛安卓系统,畅享刺激竞技... 你有没有听说过那个超级酷炫的安卓游戏——《酷猫斗牛》?最近,这款游戏在安卓平台上可是火得一塌糊涂,吸...
手机安卓系统最耗电,最耗电功能... 你有没有发现,手机用着用着,电量就“嗖”的一下子就没了?是不是觉得安卓系统特别“吃电”?别急,今天就...
安卓4.4系统安装教程,轻松升... 你有没有想过,给手机换换口味,升级一下系统呢?安卓4.4系统,那可是个充满活力的小家伙,不仅界面清新...
苹果6安卓系统能用吗,苹果6安... 你手里那台苹果6,是不是还在发挥着余热呢?最近,有不少小伙伴问我:“苹果6安卓系统能用吗?”这个问题...
安卓系统玩全军出击画面,战场风... 你有没有试过在安卓系统上玩《全军出击》这款游戏呢?那画面,简直让人热血沸腾,仿佛置身战场!今天,就让...
u盘内存转移安卓系统,轻松实现... 你有没有想过,你的安卓手机里那些珍贵的照片、视频和文件,竟然可以通过一个小巧的U盘来转移呢?没错,就...
红包升级鸿蒙和安卓系统,红包体... 你知道吗?最近有个大新闻在互联网上炸开了锅,那就是红包升级了,而且这次升级可是与鸿蒙和安卓系统紧密相...
怎么把安卓改成ios系统,系统... 你是不是也和我一样,对安卓系统有些厌倦,想要尝试一下苹果的iOS系统呢?听说iOS系统流畅又安全,但...
安卓系统软件论坛,探索创新与交... 你有没有发现,手机里的安卓系统软件论坛简直就是个宝藏库啊!这里汇聚了无数热爱安卓系统的极客们,他们在...
电视linux系统换安卓系统软... 你有没有想过,家里的电视突然变得有点儿“老气横秋”了呢?别急,今天就来给你支个招儿——给电视换上安卓...
xp系统安卓手机mtp驱动,X... 你有没有想过,你的安卓手机竟然也能装上XP系统?没错,就是那个经典的Windows XP!今天,就让...
安卓系统在哪里下载电影,轻松获... 亲爱的安卓用户们,你是不是也和我一样,时不时地想找一部好电影来放松一下呢?别急,今天就来告诉你,安卓...
安卓系统8的好手机,探索性能与... 你有没有发现,最近安卓系统8的风头可是十足的呢?这不,我就来给你好好盘点那些搭载了安卓系统8的“好手...
华为安卓系统自动更新鸿蒙系统,... 你知道吗?最近华为手机界可是掀起了一股不小的风潮呢!那就是——安卓系统自动更新到鸿蒙系统。这可不是简...
安卓换了系统信号差了,揭秘原因... 最近我的安卓手机换了个新系统,结果信号竟然差了不少!这可真是让我头疼啊。你说说,这手机换系统本应该是...