在我的电脑与Ubuntu 14.04我可以做这样的事情: $ nc -l 5349 -vvv Listening on [0.0.0.0] (family 0, port 5349) 或这个: $ nc -vvv -l 192.168.254.96 5349 Listening on [192.168.254.96] (family 0, port 5349) 并打开一个套接字来侦听在本地IP地址(192.168.254.96)上input连接。 显然我可以从另一端连接并传输数据。 但是在一台使用Debian 8.0 Jessie的服务器后面,我得到了这个奇怪的错误: $ nc -vvv -l 5349 5349: inverse host lookup failed: Unknown host nnetfd reuseport failed : Protocol not available listening on [any] […]
我和发布另一个问题的人的情况完全相同,我试图通过网关服务器隧道SSH连接,而不是必须ssh进入网关,并从那里再次手动ssh到目标服务器。 我正在尝试设置在接受的答案中给出的解决scheme, ~/.ssh/config ,其中包括: host foo User webby ProxyCommand ssh a nc -w 3 %h %p host a User johndoe 但是,当我尝试ssh foo ,我的连接保持活动3秒钟,然后死于一个Write failed: Broken pipe故障错误。 删除-w 3选项可以解决问题。 在原来的解决scheme中, -w 3的目的是什么?为什么当我使用它时,会导致Broken pipe错误? 省略它有什么害处?
我想把我的Apache日志以自定义格式(GELF)发送到UDP接收服务器(运行Graylog2)。 我确信一切正常,但过了一会儿,我得到了一个警告,我的服务器没有响应。 我在Apache错误日志中看到一大堆: piped log program 'nc -w 1 -u logserver 12201' failed unexpectedly 有趣的是,在stream量非常小的服务器上,即使没有网站stream量,我也会在日志中不断看到这个错误。 而当有交通,日志确实发送netcat到graylog – 所以它确实工作。 如果我停止Apache并重新启动它,重新启动后,错误日志中将继续显示错误。 停下来之后,我确定没有失控的进程。 configuration是: LogFormat "{ \"version\": \"1.1\", \"host\": \"%V\", \"short_message\": \"%r\", \"full_message\": \"%r, status: %>s, %O bytes, User Agent: %{User-Agent}i\", \"timestamp\": %{%s}t, \"level\": 6, \"_user_agent\": \"%{User-Agent}i\", \"_source_ip\": \"%a\", \"_duration_usec\": %D, \"_duration_sec\": %T, \"_request_size_byte\": %O, \"_http_status\": %s, \"_http_request_path\": […]
为什么nc的BSD版本1.10禁用在其他所谓的不安全分布中find的-e选项,即使使用“安全”版本的nc ,同样的危险特性也可以如下简单实现: $ # Machine A $ mkfifo pipe $ nc -l 4000 <pipe | bash >pipe $ # Machine B $ nc MachineA 4000 现在,如果我要把A机上的咒语包含在一个脚本中(如果通过`-e“参数有效地实现了上述function),我基本上已经介绍了”大胆的安全漏洞“,而不必下台到Makefile和构build级别。 那么,为什么要在netcat.c中使用#define -ing netcat.c呢?
我正在尝试使用netcat来debugging通过UDP进行通信的SIP调用。 有没有办法让同一个netcat实例来监听多个UDP连接? 我已经尝试从两个不同的主机连接到同一个netcat会话,第二个总是无法连接,即使从第一个发送EOF。 我知道,UDP“连接”是一个用词不当,并没有这样的事情存在,我是以错误的方式思考这个问题? 我是版本不可知的,因为我安装了OpenBSD和Ubuntu“传统”(GNU Debian)netcats。 我在OpenBSD中尝试了-k标志无济于事。 任何想法都表示赞赏。
我经常被朋友问及帮助解决小型Linux问题,而且我经常需要login到远程系统。 通常在创build帐户和login方面存在很多问题(有时候这个框在NAT设备后面,有时SSHD没有安装,等等),所以我通常只是要求他们使用netcat创build一个连接后的shell( nc -e / bin / bash)。 如果他们没有netcat,我可以让他们获得一个静态编译的二进制文件的副本,这不是很难或耗时下载和运行。 虽然这对于input简单的命令已经足够了,但是我不能运行任何需要tty(例如vi)的应用程序,也不能使用任何作业控制function。 我设法绕过这个问题,通过运行in.telnetd在连接shell内的几个参数,将分配给我一个terminal,并把我放到一个shell。 不幸的是,in.telnetd在大多数系统上通常不会默认安装。 在不需要任何非标准封装的情况下,获得全function连接terminalshell的最简单方法是什么? (一个小型的C程序也能很好地工作,我似乎找不到很多关于如何分配/分配TTY的文档。一个解决scheme不需要我通过SSHD的源代码和TELNETD会很好:))
有没有办法使用Netcat和UDP发送文件(图片或video)。 它默认为TCP,但我想用UDP发送。 我试着简单地将-u添加到nc命令中,但这不起作用。 以下是我正在使用的两个命令: cat File.jpg | nc -u -l 777 nc -u 192.168.xx 777 | pv -b > newfile.jpg 我用我的IP地址为xx,并在我的电脑上相应的文件。 我也在使用Ubuntu。 感谢您的帮助!
我在服务器A(源)上运行: dd bs=16M if=/dev/sda|bzip2 -c|nc serverB.example.net 19000 在服务器B(目标)上: nc -l -p 19000|bzip2 -d|dd bs=16M of=/dev/sdb 我需要在某个地方看到进展吗? (服务器的A / dev / sda是50GB) 我已经等了20分钟,还在运行,我怎么知道它真正的传输数据/等?
以下BASH脚本在Docker容器中下载并构buildmpv ( https://github.com/mpv-player/mpv-build ),并使用netcat将该文件发送到主机(主机使用netcat进行侦听): HOSTIP="192.168.1.100" PORT="62514" nc -v -l $PORT > mpv & sleep 1 sudo docker run ubuntu:14.04 /bin/bash -c "\ sed -i -e 's/# deb/deb/g' /etc/apt/sources.list; \ cat /etc/apt/sources.list; \ apt-get update; \ apt-get install –yes –force-yes git python-minimal; \ git clone https://github.com/mpv-player/mpv-build.git; \ cd mpv-build/; \ ./update; \ apt-get install –yes –force-yes […]
我从脚本执行以下命令: echo '{"hostUp": true}' | sudo /usr/local/bin/netcat localhost 8001 但是,netcat客户端将无限期地保持打开状态。 一旦这个数据被发送,我怎样才能closures连接?