Назад | Перейти на главную страницу

xinetd: служба udp, возвращающая только строку

Я использую xinetd для предоставления простой службы, которая в основном должна возвращать только строковое значение.

Услуга необходима для поддержка tcp и udp.

В услуги tcp выглядит так и работает как положено:

service simple-tcp
{
    disable         = no
    type            = UNLISTED
    id              = tcp-service
    socket_type     = stream
    port            = 20
    protocol        = tcp
    user            = nobody
    wait            = no
    server          = /bin/echo
    server_args     = Hello World.
    instances       = 25
    log_on_success  += DURATION HOST
    log_on_failure  += ATTEMPT HOST
    per_source      = 5
}

Так что я хотел сделать то же самое для служба udp но я пока не могу заставить его работать.

service udp-service
{
    disable         = no
    type            = UNLISTED
    id              = udp-service
    socket_type     = dgram
    port            = 25
    protocol        = udp
    user            = nobody
    wait            = yes
    server          = /bin/echo
    server_args     = Hello World.
    instances       = 25
    log_on_success  += DURATION HOST
    log_on_failure  += ATTEMPT HOST
    per_source      = 5
}

Я реализовал wait = yes для udp нужно. Подключение регистрируется, если я отправляю данные в службу, но не могу получить ответ. И файл журнала содержит «status = 1», что указывает на ошибку. Но я понятия не имею, как сузить круг вопросов.

Может ли кто-нибудь объяснить, что происходит, и есть ли способ исправить это или другой простой способ просто вернуть строку через udp?