The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Как отлаживать сетевые скрипты с помощью netcat
   mkdir tmp
   cd tmp
   mkfifo sock1 sock2
   nc -l -p 8000 < sock1 | tee sock2 &
   nc 10.245.134.32 23 < sock2 | tee sock1

Теперь вместо того, чтобы устанавливать соединение непосредственно с узлом 10.245.134.32:23, 
делаем telnet на localhost:8000 из другой консоли на хосте home и наблюдаем
проходящие данные внутри
tcp-сессии в консоли, где выполняли команды.

Для этой же цели подходит и утилита socat: 
   socat -v tcp4-l:8000 tcp4:yandex.ru:80
 
22.09.2009 , Автор: Вячеслав , Источник: http://trushkinv.livejournal.com/...
Ключи: netcat, debug, socket, fifo, pipe
Раздел:    Корень / Программисту и web-разработчику / C/C++, сборка, отладка

Обсуждение [ RSS ]
  • 1.1, ПИнеу (?), 18:03, 23/09/2009 [ответить]      [к модератору]
  • +/
    Отличная идея! :)
     
  • 1.2, templier (?), 23:29, 23/09/2009 [ответить]  []     [к модератору]
  • +/
    Что-то я не как не пойму.
    Выдержка из man nc

    -l      Used to specify that nc should listen for an incoming connection rather than initiate a connection to a remote host.  It is an error to use this option in conjunction with the -p, -s, or -z options.  Additionally, any timeouts specified with the -w option are ignored.

     
     
  • 2.3, Вячеслав (??), 06:16, 24/09/2009 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >Что-то я не как не пойму.
    >Выдержка из man nc
    >
    >-l      Used to specify that nc should
    >listen for an incoming connection rather than initiate a connection to
    >a remote host.  It is an error to use this
    >option in conjunction with the -p, -s, or -z options.  
    >Additionally, any timeouts specified with the -w option are ignored.

    По всей видимости вы используете bsd-систему, а не линукс, как было указано в примере. Попробуйте вместо "-l -p 8000" использовать "-l 8000". У меня заработало.


     
     
  • 3.5, FrBrGeorge (ok), 00:44, 26/09/2009 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Ну нет, во-первых, маны одинаковые, а во вторых, -l (listener) и -p (source port) действительно бессмысленно использовать вместе, и вместе они не работают ни в linux, ни в BSD

    У автора просто дрогнула рука.

     
     
  • 4.6, Вячеслав (??), 07:14, 26/09/2009 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > во-первых, маны одинаковые

    прошу прощения, но нет:

    В дебиан ленни:
    :~$ man 1 nc
    ---8<---
    NAME
           nc - TCP/IP swiss army knife

    SYNOPSIS
           nc [-options] hostname port[s] [ports] ...
           nc -l -p port [-options] [hostname] [port]
    ...
    OPTIONS
           -l           listen mode, for inbound connects
           -p port      local port number (port numbers can be individual or ranges: lo-hi [inclusive])
    --->8---
    И сам netcat ведет себя по-разному

     
     
  • 5.8, FrBrGeorge (ok), 00:16, 27/09/2009 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >> во-первых, маны одинаковые
    >
    >прошу прощения, но нет:

    Цитирую: "Это «классическая» версия программы, написанная *Hobbit*. В ней недостаёт многих возможностей версии netcat-openbsd."

    По всей видимости, Debian policy не позволяет с бухты-барахты поменять один
    netcat на другой, пусть даже более фичастыЙ, но несовместимый по ключам.
    Однако в sid оно уже называется "netcat-traditional", а не просто "netcat".

    В OWL, например, netcat из OpenBSD аж с 2003 года.

     

  • 1.4, FrBrGeorge (ok), 00:14, 26/09/2009 [ответить]  []     [к модератору]
  • +/
    Я прямо так умилился. Значит, запускаем netcat. Потом ещё один netcat. А для просмотра результата запускаем... telnet!

    А совет дельный, спасибо.

     
     
  • 2.7, Вячеслав (??), 07:19, 26/09/2009 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >Я прямо так умилился. Значит, запускаем netcat. Потом ещё один netcat. А
    >для просмотра результата запускаем... telnet!
    >
    >А совет дельный, спасибо.

    Кстати, можно использовать socat для этой же цели.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру