TCP-прослушиватель, который отбрасывает все свои входные данные?

Вы не можете скачать полный исходный код Java 1.4.2, Sun никогда не публиковала его (насколько я знаю). На странице Oracle, на которую вы ссылаетесь, прокрутите вниз до версии 1.4.2_19 и вы найдете установочные пакеты для 32-битных процессоров Intel, которые вы можете использовать на вашем сервере Amazon (если вы сможете установить необходимые 32-битные библиотеки поддержки).

1
11.04.2019, 11:31
2 ответа
socat /dev/null,ignoreeof tcp-listen:2003,fork,reuseaddr
1
27.01.2020, 23:41

Лучшее — сложный критерий, но можно заметить, что Docker необходим для этого так же, как Microsoft Excel. & #9786;

Мы уже знаем программу Unix, которая считывает ввод до конца EOF и фактически отбрасывает его:

cat > /dev/null

Превратить его в TCP-сервер очень просто. Это и есть UCSPI -TCP. Он берет программы, использующие стандартный ввод-вывод, и оборачивает вокруг них простую структуру, которая превращает их в серверы TCP. Можно заменить catчем-то другим и изменить протокол службы, не беспокоясь о транспорте. Аналогичным образом можно заменить инструменты UCSPI -LOCAL на инструменты UCSPI -TCP и изменить транспорт, ничего не делая с cat.

Существует несколько наборов инструментов UCSPI -TCP. Дэниел Дж. Бернштейн написал один. Лоран Берко написал один. Геррит Пейп написал один. Адам Сэмпсон написал один. Я написал один. Более того, можно смешивать и сочетать инструменты из нескольких наборов инструментов, причем этот материал преднамеренно легко компонуется. Можно использовать мой fdredirили redirfdЛорана Берко или даже создать не -интерактивный sh. (Первые два имеют меньшие накладные расходы, чем полноценный -взорванный sh, а для нош-инструментов fdredirдаже встроен -, что дополнительно позволяет избежать накладных расходов на цепочку через внешнюю команду.)

Таким образом, есть несколько способов сделать это:

  1. Bernsteintcpserver(оригинал или djbwares; нет поддержки IPv6 )
    1. tcpserver -R -H -l 0 0.0.0.0 2003 fdredir --write 1 /dev/null cat
    2. tcpserver -R -H -l 0 0.0.0.0 2003 redirfd -w 1 /dev/null cat
    3. tcpserver -R -H -l 0 0.0.0.0 2003 sh -c 'exec > /dev/null cat'
  2. Хоффманtcpserver(работает как с IPv4, так и с IPv6; имеет исходные значения Bernstein по умолчанию для поиска DNS и INFO, которые необходимо отключить )
    1. tcpserver -R -H -l 0 ::0 2003 fdredir --write 1 /dev/null cat
    2. tcpserver -R -H -l 0 ::0 2003 redirfd -w 1 /dev/null cat
    3. tcpserver -R -H -l 0 ::0 2003 sh -c 'exec > /dev/null cat'
  3. моя tcpserverпрокладка (работает как с IPv4, так и с IPv6, но для каждого из них приходится запускать отдельные экземпляры; имеет более современные значения по умолчанию )
    1. tcpserver ::0 2003 fdredir --write 1 /dev/null cat
    2. tcpserver ::0 2003 redirfd -w 1 /dev/null cat
    3. tcpserver ::0 2003 sh -c 'exec > /dev/null cat'
  4. мой UCSPI -инструменты TCP (работает как с IPv4, так и с IPv6,в одном на Linux и FreeBSD )
    1. tcp-socket-listen --combine4and6 ::0 2003 tcp-socket-accept fdredir --write 1 /dev/null cat
    2. tcp-socket-listen --combine4and6 ::0 2003 tcp-socket-accept redirfd -w 1 /dev/null cat
    3. tcp-socket-listen --combine4and6 ::0 2003 tcp-socket-accept sh -c 'exec > /dev/null cat'
  5. Bercots6-tcpserver6(замена s6-tcpserver4для IPv4 )
    1. s6-tcpserver6 ::0 2003 fdredir --write 1 /dev/null cat
    2. s6-tcpserver6 ::0 2003 redirfd -w 1 /dev/null cat
    3. s6-tcpserver6 ::0 2003 sh -c 'exec > /dev/null cat'
  6. Bercot s6 -сетевые инструменты (замена s6-tcpserver4для IPv4 )
    1. s6-tcpserver6-socketbinder -B ::0 2003 s6-tcpserver6d fdredir --write 1 /dev/null cat
    2. s6-tcpserver6-socketbinder -B ::0 2003 s6-tcpserver6d redirfd -w 1 /dev/null cat
    3. s6-tcpserver6-socketbinder -B ::0 2003 s6-tcpserver6d sh -c 'exec > /dev/null cat'
  7. Папкаtcpsvd(нет поддержки IPv6 )
    1. tcpsvd 0.0.0.0 2003 fdredir --write 1 /dev/null cat
    2. tcpsvd 0.0.0.0 2003 redirfd -w 1 /dev/null cat
    3. tcpsvd 0.0.0.0 2003 sh -c 'exec > /dev/null cat'
  8. Sampsononenetd(работает как с IPv4, так и с IPv6, но для каждого из них приходится запускать отдельные экземпляры )
    1. onenetd -6 ::0 2003 fdredir --write 1 /dev/null cat
    2. onenetd -6 ::0 2003 redirfd -w 1 /dev/null cat
    3. onenetd -6 ::0 2003 sh -c 'exec > /dev/null cat'

Наслаждайтесь заменой

hexdump -C 1>&2
или (безsh)
fdmove -c 1 2 hexdump -C
для серверной программы, чтобы получить локальный журнал того, что делает ваша тестируемая клиентская программа. & #9786;

Дополнительная литература

  • Протокол :
  • наборы инструментов :
    • Дэниел Дж. Бернштейн.ucspi -TCP. кр.ып.к.
    • s6 -сеть . Лоран Берко. skarnet.org.
    • выполнить . Лоран Берко. skarnet.org.
    • Джонатан де Бойн Поллард (2019 ).нош . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ).djbwares . Программное обеспечение.
    • ipsvd . Геррит Пейп. www.smarden.org.
    • onenetd . Адам Сэмпсон. Offog.org.
  • справочники :
    • Дэниел Дж. Бернштейн.Программа tcpserver. ucspi -TCP.
    • Эрвин Хоффманн.tcpserver. ucspi -tcp6 . fehcom.de.
    • s6-tcpserver4.Лоран Берко. s6 -сеть . skarnet.org.
    • s6-tcpserver6. Лоран Берко. s6 -сеть . skarnet.org.
    • fdmove. Лоран Берко. выполнить . skarnet.org.
    • redirfd. Лоран Берко. выполнить . skarnet.org.
    • tcpsvd. ipsvd . Геррит Пейп. www.smarden.org.
    • Джонатан де Бойн Поллард (2019 ).tcpserver. djbwares . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ).fdredir. Направляющая ноша . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ).fdmove. Направляющая ноша . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ). tcp-socket-listen. Направляющая ноша . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ).tcp-socket-accept. Направляющая ноша . Программное обеспечение.
    • Джонатан де Бойн Поллард (2019 ).tcpserver. Направляющая ноша . Программное обеспечение.
1
27.01.2020, 23:41

Теги

Похожие вопросы