Questions tagged «netcat»

Netcat是一种计算机联网服务,用于使用TCP或UDP读取和写入网络连接

4
netcat如何知道UDP端口是否打开?
因此,我可以使用此netcat命令来检查UDP端口是否打开: $ nc -vz -u 10.1.0.100 53 Connection to 10.1.0.100 53 port [udp/domain] succeeded! 与TCP不同,UDP是无连接的(即发即弃)。因此,从总体上讲,有人知道netcat如何知道UDP端口是打开的吗?它要求答复还是类似的东西?
49 netcat  udp 

4
将十六进制字符串转换为二进制并使用netcat发送
我有一个可以发送的二进制文件netcat: $ nc -l localhost 8181 < my.dat 该文件包含以下内容: $ xxd my.dat 0000000: 0006 3030 3030 4e43 ..0000NC 我真正想做的是直接发送十六进制字符串。我已经试过了: $ echo '0006303030304e43' | nc -l localhost 8181 但是,以上命令只是将ascii字符串直接发送到nc。
46 linux  binary  netcat 

4
/ dev / tcp监听而不是nc监听
使用netcat侦听器,例如: nc -l <port> < ~/.bashrc 我可以使用以下方法在新计算机(没有ncLDAP或没有LDAP)上获取.bashrc : cat < /dev/tcp/<ip>/<port> > ~/.bashrc 我的问题是:有没有一种方法可以nc -l <port>在我的第一行中使用/ dev / tcp而不是模仿它的功能nc? 我正在使用的计算机是非常坚固的实验室/沙盒环境RHEL(没有ssh,没有nc,没有LDAP,没有yum,我无法安装新软件,并且它们没有连接到Internet)

2
ncat,nc和netcat有什么区别?
我不知道什么时候使用nc,netcat或者ncat。如果一个是另一个的不推荐使用的版本?如果只有一种发行版可用?如果是同一命令但名称不同? 实际上我有点困惑。我的问题来自想要在两台CentOS 7服务器之间进行网络速度测试。我遇到了几个使用的示例nc,dd但使用netcat或的示例并不多ncat。 有人可以帮我澄清一下吗?
20 centos  netcat  nc 

1
无法使用nc托管主机,但可以ping通
我正在尝试使用netcat从一台虚拟机连接到另一台虚拟机的端口25,但它告诉我no route to host虽然我可以ping通。我确实将防火墙默认策略设置为丢弃,但是我有一个例外,可以接受该特定子网上端口25的流量。我可以使用nc从VM 3到端口25上的VM 2进行连接,但不能从VM 2 TO 3进行连接。 这是我的VM2防火墙规则的预览 这是我的VM 3防火墙规则的预览 当我显示监听服务时*:25,这意味着它正在监听所有ipv4 ip地址和:::25ipv6地址。我不明白错误在哪里以及为什么不起作用,两个防火墙规则都接受端口25上的流量,因此应该可以连接。我尝试比较两者之间的差异,以了解为什么可以从vm3连接到vm2,但配置完全相同。关于可能是什么问题的任何建议? 更新停止iptable服务可以解决问题,但我仍然需要那些规则。

1
使用netcat进行端口转发
我有一个监听的进程IP:port-实际上,它是火花流连接到套接字。问题是,我希望以某种方式创建一个连接到一个端口上的spark的服务器,并将数据从另一个端口流式传输到该服务器中。 例如,spark流示例使用netcat实用程序(例如nc -lk 5005)。但是,我还有另一个服务,它监听传入的消息,然后吐出一条消息。因此,我需要某种可以侦听来自服务A的消息并将其传递给spark的服务器。 我的服务A,依靠套接字。而我的火花使用者依赖插座。 到目前为止,这是我从端口到端口的转发,但这似乎不起作用: nc -X 4 -x 127.0.0.1:5005 localhost 5006 以服务A:5005->套接字-> 5006-> Spark 的想法 我似乎找不到正确的方法来完成这项工作。 一些答案建议如下: socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006 我的火花塞接收器没有连接,或者似乎无法连接。我得到错误:Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused
19 linux  networking  netcat  nc 

3
如何创建UDP数据包?
当我执行以下Netcat命令并使用Wireshark查看数据包时,它说UDP数据包格式错误。 $ echo "this is a test" | nc -u 127.0.0.1 53 同样,$ echo "this is a test" > /dev/udp/127.0.0.1/53在Wireshark中使用类似的命令会产生“格式错误的数据包”错误。 echo命令被发送/传递到Netcat服务器,没有错误。但这让我感到奇怪:是否可以通过echo或其他一些本机Unix工具手动构建适当的UDP数据包? 我正在使用Debian和macOS。
15 linux  debian  osx  netcat  udp 

3
使用输入/输出命名管道进行TCP连接
我一直很想让它工作一段时间,所以我怀疑对管道如何工作的某种根本误解是造成麻烦的根本原因。 我的目标是通过netcat文件系统上的某个远程主机启动TCP连接,并在文件系统上有两个命名管道:一个可以读取进程以获取传入数据,另一个可以写入进程作为传出数据。我目前正在使用以下构造: mkfifo in mkfifo out cat out | netcat foo.bar.org 4000 > in & 从这里开始,我想允许其他进程对该开放的TCP连接进行读写。这应该“起作用”,还是有这样的构造不能起作用的原因? 什么似乎目前发生的是,我可以读取out没有问题,但是当我写到in我得到的输出提一个破碎的管道和所有后续通信似乎是死了。有什么想法吗? (相关:我最初使用: netcat foo.bar.org 4000 < out > in & 但发现它阻止了等待输入。我对此也很好奇,但最好在一个单独的问题中解决。)
15 bash  pipe  tcp  netcat 

5
通过网络发送文件的最简单方法
通过网络将文件发送到其他计算机的最简单,最通用的方法是什么?我的意思是其他人目前正在使用的计算机。如果计算机打开了活动会话,我认为SSH不起作用。 到目前为止,我正在使用netcat,它工作正常。但是还有其他简单的方法可以做到这一点吗?我netcat遇到的一个问题是,接收者需要知道文件的结尾,并且必须为流指定一个名称。

2
通过SSH反向隧道的远程桌面以替换TeamViewer
我想通过SSH(反向)隧道打开从笔记本电脑到桌面的远程桌面会话。那应该很简单(或至少可行),对吗?到目前为止,我一直在使用Team Viewer登录到远程桌面。我希望在没有Team Viewer的情况下获得类似的结果。 这是我的SSH隧道的样子: laptop--->nat--->middleman<--nat<--desktop 所有机器都运行Linux(主要是Kubuntu 12.04或OpenSuse 12.3)。我不能在nat路由器上更改任何端口或进行任何配置更改。 我将描述我的SSH隧道,因为理解这对于解决VNC /远程桌面问题(这是我的问题的核心)似乎是必要的。关于这条腿: middleman<--nat<--desktop ...它是如何建立的: autossh -M 5234 -N -f -R 1234:localhost:22 user@middleman.com 关于这条腿: laptop--->nat--->middleman 我可以按以下方式连接到中间人: me@laptop:~$ ssh -i ~/.ssh/id_rsa admin@middleman 但是,我真正需要做的是直接连接到桌面,而不是中间人。为此,我在中间人上使用netcat(“ nc”)。基于此,似乎需要nc。所以我在笔记本电脑上编辑SSH配置文件以使用ProxyCommand和nc: me@laptop:~/.ssh$ nano config 内容是: Host family_desktops ProxyCommand ssh middleman_fqdn nc localhost %p User admin PasswordAuthentication no IdentityFile ~/.ssh/my_id_rsa 哪里middleman_fqdn像“ middleman.com” …

1
SSH速度通过ProxyCommand大大提高-但是为什么呢?
TL; DR版本 观看此ASCII转换或该视频 -然后提出发生这种情况的任何原因。下面的文字描述提供了更多的上下文。 设置细节 机器1是一台Arch Linux笔记本电脑,在其ssh上生成,并连接到运行Armbian的SBC(橙色PI Zero)。 SBC本身通过以太网连接到DSL路由器,并且IP为192.168.1.150 笔记本电脑通过Raspberry PI WiFi官方加密狗通过WiFi连接到路由器。 还有另一台笔记本电脑(机器2)通过以太网连接到DSL路由器。 使用iperf3对链接进行基准测试 进行基准测试时iperf3,笔记本电脑和SBC之间的链接小于理论上的56 MBits / sec,这是预期的,因为这是在“拥挤的2.4GHz” (公寓楼)内的WiFi连接。 更具体地说:在iperf3 -sSBC上运行后,在笔记本电脑上执行以下命令: # iperf3 -c 192.168.1.150 Connecting to host 192.168.1.150, port 5201 [ 5] local 192.168.1.89 port 57954 connected to 192.168.1.150 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ …
14 ssh  networking  netcat 

1
nmap-ncat中gnu-netcat的'-z'等效选项是什么?
我在使用以下命令运行脚本之前检查服务上的侦听端口: until nc -z $HOST $PORT do echo "waiting for service to be available..." sleep 0.5 done exec "/my/script" 它曾经与gnu-netcat一起使用,但是现在,我已经升级了Linux发行版,并且它使用了nmap-ncat作为/usr/bin/nc命令。 我想知道与nmap-ncat包一起使用的等效解决方案。
13 netcat  nmap 

2
Netcat-如何使用IPv6地址在TCP端口上侦听?
我正在使用netcat(v1.10-41.1)的最新版本,该版本似乎没有用于IPv6地址的选项(与-6的旧版本中的一样nc)。 如果输入nc -lvnp 2222并使用来检查监听端口netstat -punta,则服务器似乎2222仅在监听IPv4地址的端口上: tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN 2839/nc tcp6无效,例如我的apache2服务器: tcp6 0 0 :::80 :::* LISTEN -
13 linux  netcat 

1
shell脚本中的netcat提供无效连接
我有一个Shell脚本,用于在端口1111上netcat侦听localhostWeb请求。localhost:1111/index.html例如,每次我尝试访问时,都会得到: invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038 每次访问时,末尾的数字(60038)似乎都在增加localhost。 有什么问题的建议吗?什么是default localhost目录?我应该在哪里放一个index.html,这样localhost:1111/index.html会工作呢? 编辑 这是完整的脚本: #!/bin/sh while true do netcat -vvl localhost -p 1111 -c ' set -x read http_request echo HTTP/1.0 200 OK echo echo "Received HTTP request: $http_request" ' done

7
如何grep netcat输出
我正在尝试grep的实时文本流netcat,但是对我来说不起作用: netcat localhost 9090 | grep sender 什么也不会返回,但是我确定应该会返回。 如果我将netcat输出重定向到文件并添加一些延迟(模拟真实环境),则它可以工作: $ (sleep 5; cat netcat_output; sleep 5) | grep sender {"jsonrpc":"2.0","method":"GUI.OnScreensaverDeactivated","params":{"data": "shuttingdown":false},"sender":"xbmc"}} 我也尝试添加--line-buffered但没有成功。 我做错了什么? 编辑: 我注意到与相同的问题sed,输出为空。 但是,例如,hexdump将文本实时转换为十六进制: $ netcat localhost 9090 | hexdump -C 00000000 7b 22 6a 73 6f 6e 72 70 63 22 3a 22 32 2e 30 22 …
13 grep  netcat 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.