как открыть порт? ((root-права есть))

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Mike2000
Сообщения: 2

как открыть порт?

Сообщение Mike2000 »

надо открыть порт 2401 на сервере
Сейчас он вроде закрыт (как проверить?)
Заранее спасибо
Спасибо сказали:
Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Re: как открыть порт?

Сообщение flook »

Проверить - netstat или nmap.
Открыть - тройка socket, bind, listen для tcp, двойка socket, recvmsg для udp ну и на десерт poll или select - для ... на все есть красочные man страницы, с подробными описаниями.
Или вам (?) нужна экзотика? В смысле не udp/tcp?
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали:
Mike2000
Сообщения: 2

Re: как открыть порт?

Сообщение Mike2000 »

а можно сразу с опциями?
в man pages ничего нельзя разобрать, то что я оттуда пробовал делать не работает (я совсем в этом не разбираюсь, а администратор в отпуске).
Спасибо сказали:
Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Re: как открыть порт?

Сообщение flook »

Код: Выделить всё

#include <errno.h>
#include <netdb.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

...

int sk, nsk, addrlen;
int port = 10000;
int backlog = 50;
char addr[] = "192.168.1.100";
struct sockaddr_in saddr;
struct sockaddr caddr;
memset(&saddr,0,sizeof(saddr));
saddr.sin_family = AF_INET;
saddr.sin_port = htons(port);
saddr.sin_addr.s_addr = inet_addr(addr);

sk = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if (sk < 0)
  goto err;

if (bind(sk,  (struct sockaddr_in *)&saddr, sizeof(saddr)) < 0)
  goto err;

if (listen(sk, 50) < 0)
  goto err;

while ((nsk = accept(sk, &caddr, &addrlen)) >= 0) {
   if (fork()) {
      close(nsk);
  } else {
   close(sk);
  /* client specific part */
   close(nsk);
  }
}

err:
close(sk);


Рюшечки ищите сами :) Или flook@mail.ru.
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали: