AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[netcat](unix)

Martin Hope
pkaramol
Asked: 2021-10-14 01:01:17 +0800 CST

连接尝试后,netcat 在 localhost 监听端关闭连接

  • 3

Ι am nc-listening onlocalhost:2500

▶ nc -l 2500
_

在另一个终端上,我试图连接到这个监听端

▶ nc -zv localhost 2500
nc: connectx to localhost port 2500 (tcp) failed: Connection refused
Connection to localhost port 2500 [tcp/rtsserv] succeeded!

为什么第一次尝试似乎失败了?

我还注意到,当连接尝试由于某种原因完成(显然成功)时,我的侦听过程退出。不知道为什么会这样。

networking netcat
  • 1 个回答
  • 622 Views
Martin Hope
Noobie
Asked: 2021-10-10 07:28:56 +0800 CST

netcat广播理解

  • 0

我正在将 macOS 与 gnu netcat 一起使用。我想了解如何使用 netcat 广播消息。

我在netcat听 4555

netcat -l -p 4555 192.168.0.101

但是当我尝试发送广播消息时

netcat 192.168.0.255 4555但我一直在犯错误

Error: Couldn't create connection (err=-5): Permission denied

我收到以下错误

Error: Couldn't create connection (err=-5): Permission denied

下面的帖子说可以这样做,netcat-traditional但我正在运行 GNU netcat 在这里很重要。

networking netcat
  • 1 个回答
  • 607 Views
Martin Hope
NotQuiteSo1337
Asked: 2021-09-01 13:16:59 +0800 CST

使用 netcat 在 localhost 上设置绑定 shell,但 '-e' 标志有问题

  • 0

我正在尝试做一个简单的练习,我需要使用 netcat 设置一个托管绑定 shell 的“服务器”。在我的本地主机上。我正在运行 ubuntu 20.04

我正在关注本教程,它有一条简单的路线:

nc -nvlp 5555 -e /bin/bash

但是,当我复制粘贴这一位时,netcat 被-e标志弄糊涂了:

netcat: invalid option -- 'e'

删除-e标志也没有多大帮助。在这种情况下,netcat 只打印它的使用说明。我哪里错了?

编辑

检查我的 netcat 版本:

ask@Garsy:~$ netcat -h
OpenBSD netcat (Debian patchlevel 1.206-1ubuntu1)
ubuntu netcat
  • 1 个回答
  • 435 Views
Martin Hope
Mark
Asked: 2019-01-06 23:46:05 +0800 CST

使用 nc 以毫秒为单位超时

  • 4

我nc在 Debian 环境中使用:

# dpkg -l | grep netcat
ii  netcat-traditional                    1.10-41+b1
# cat /etc/debian_version
9.4

它的帮助页面描述了-w标志的行为:

-w secs                 timeout for connects and final net reads

所以它似乎只接受秒(作为整数)。我需要减少此超时,因为我必须每秒轮询远程设备两次:

echo -n read_input | nc -w 1 192.168.1.185 8800

此命令由应用程序发送。我只能设置要执行的控制台命令。

当然,在 1 秒超时的情况下,我几乎无法每两秒轮询一次设备(以避免在前一个套接字尚未关闭时打开新套接字)。

您是否确认没有办法实现这一目标?那么,有没有办法让超时<1秒netcat? 出于我自己的好奇心:为什么网络超时应该以秒为单位?

debian netcat
  • 1 个回答
  • 14483 Views
Martin Hope
fullnitrous
Asked: 2018-08-15 15:00:28 +0800 CST

Proc stdin 奇怪的行为

  • 1

在此处输入图像描述

有人可以解释为什么会发生这种情况以及如何解决它,以便发送到标准输入的数据与输入到标准输入的数据的行为方式相同。

对于那些看不到 .gif 的人

基本上我有 3 个终端设置。一个正在运行一个 netcat 服务器,它是以下命令。

nc -l 127.0.0.1 4000

终端 2 正在运行一个 netcat 客户端,它是以下命令。

nc 127.0.0.1 4000

当输入客户端时,这基本上意味着将数据输入到该程序的标准输入或文件描述符 0。一旦按下回车键,数据就会显示在服务器上。这是预期的行为。

人们会期望,如果您从键盘以外的其他来源向 stdin 输入数据,只要您在末尾提供一个换行符甚至一个换行符和一个回车符,它的工作方式就相同。

虽然在运行具有以下命令的终端 3 时情况并非如此。

echo "test\n" > /proc/$pid/fd/0

奇怪的是,来自 echo 的数据甚至出现在终端 2 中,但它没有被视为键盘输入,因此没有消息从终端 2 上的 clinet 发送到终端 1 上的服务器。

我的结论是胡说八道。

netcat stdin
  • 1 个回答
  • 177 Views
Martin Hope
bashbin
Asked: 2018-07-22 08:35:59 +0800 CST

Netcat - 如何使用 IPv6 地址监听 TCP 端口?

  • 22

我正在使用最新版本的 netcat ( v1.10-41.1),它似乎没有 IPv6 地址选项(就像-6在旧版本中一样nc)。

如果我输入nc -lvnp 2222并检查监听端口netstat -punta,服务器似乎只监听2222IPv4 地址的端口:

tcp        0      0 0.0.0.0:2222            0.0.0.0:*               LISTEN      2839/nc  

tcp6 不活动,例如我的 apache2 服务器:

tcp6       0      0 :::80                   :::*                    LISTEN      -
linux netcat
  • 2 个回答
  • 34757 Views
Martin Hope
jabe
Asked: 2018-05-25 13:07:17 +0800 CST

当我刷新浏览器时,是什么让 netcat 关闭?

  • 0

如果我使用 netcat 来侦听这样的端口: nc -l 5555,然后我可以localhost:5555在我的网络浏览器中访问,netcat 将打印请求。但是,如果我在浏览器中单击刷新,netcat 将停止工作。这是什么原因造成的?

我发现指定-k强制 netcat 在当前连接完成后进行侦听,但我想知道是什么让它默认关闭。

netcat
  • 1 个回答
  • 273 Views
Martin Hope
Snagnar
Asked: 2018-05-15 03:33:02 +0800 CST

文件传输完成后如何让Netcat执行命令?

  • 5

我想让我的服务器上的 netcat 执行一个脚本,该脚本适用于刚刚发送的文件,并将该脚本的输出作为对客户端的响应发送。我的做法是:

在接收站点上:

nc.traditional -l -p 2030 -e "./execute.sh" > file.iso

在发送站点上:

cat file.iso - | nc.traditional -w 1 serverAddress 2030

现在,接收站点在文件完全传输之前执行脚本,但将脚本的输出发送回发送站点,然后关闭连接。我希望接收站点等到文件完全传输后再执行脚本。

scripting netcat
  • 1 个回答
  • 2922 Views
Martin Hope
Jeffrey L. Roberts
Asked: 2018-03-05 01:14:52 +0800 CST

通过 Netcat 向 Memcached 发送 UDP 数据包

  • 1

我正在尝试stats通过 netcat 将命令发送到 memcached,但是,我没有从 memcached 得到任何返回...

我努力了

echo "stats" > commands.txt
nc -u 127.0.0.1 11211 < commands.txt

我也试过

echo stats | nc -u 127.0.0.1 11211

根据我在Memcached 文档底部的第1176 行阅读的内容,发送时的命令可能必须包括

Each UDP datagram contains a simple frame header, followed by data in the
same format as the TCP protocol described above. In the current
implementation, requests must be contained in a single UDP datagram, but
responses may span several datagrams. (The only common requests that would
span multiple datagrams are huge multi-key "get" requests and "set"
requests, both of which are more suitable to TCP transport for reliability
reasons anyway.)

The frame header is 8 bytes long, as follows (all values are 16-bit integers 
in network byte order, high byte first):

0-1 Request ID
2-3 Sequence number
4-5 Total number of datagrams in this message
6-7 Reserved for future use; must be 0

我的问题是,如何stats使用 netcat 通过 udp 将命令发送到 Memcached?

netcat udp
  • 1 个回答
  • 1420 Views
Martin Hope
henriquehbr
Asked: 2018-02-14 04:16:11 +0800 CST

如何在 shell 脚本(netcat)上将文本作为代码从服务器执行到客户端

  • 1

我有两个文件,client.sh所有server.sh必要的数据都在服务器上,使用netcat发送到客户端,客户端只是获取这些数据并将其显示给最终用户,问题是当服务器发送一些多行代码时,客户只是将其作为文本接收并显示在屏幕上

客户端.sh

ip=127.0.0.1
client_port=5678
server_port=8765

while :
do
        # Request the menu from the server
        echo menu > /dev/tcp/"$ip"/"$server_port"
        # Waits the server response
        nc -l $porta_cliente
done

服务器.sh

ip=127.0.0.1
porta_cliente=5678
porta_servidor=8765

while :
do
        nc -vv -l $porta_servidor > logservidor
        echo "Texto recebido: "`cat logservidor` # LOG
        case `cat logservidor` in
        "splash")
                echo "dialog --stdout --msgbox 'SPLASH' 0 0" > /dev/tcp/"$ip"/"$porta_c$
        ;;
        "menu_inicial")
                nc $ip $porta_cliente <<-EOF
                        dialog --stdout --backtitle 'Bem vindo ao SEPA 0.1' --title 'Me$
                        Cadastrar 'Criar um novo usuário' \
                        Entrar 'Fazer login com sua conta' \
                        Sair 'Encerrar o SEPA'

                        # Caso o usuário selecione Cancelar, a execução do script será $
                        if [ $? -eq 0 ]; then
                                echo SUCESSO
                        else
                                rm resposta_servidor dados_digitados 2> /dev/null
                                clear
                                exit
                        fi
                EOF
        ;;
        "menu_principal")
                echo "dialog --msgbox 'MENU_PRINCIPAL' 0 0" > /dev/tcp/"$ip"/"$porta_cl$
        ;;
        *)
                dialog --msgbox 'WTF?!' 0 0 > /dev/tcp/"$ip"/"$porta_cliente"
        ;;
        esac
done
shell-script netcat
  • 2 个回答
  • 841 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve