LINUX.ORG.RU

Сообщения Garoldy

 

FTP клиент с 1024 портом не может подключиться к серверу

Всем привет! Есть два сервера:

  1. Новый Ubuntu 22.04.5 LTS
  2. Старый Ubuntu 20.04.2 LTS

На них запущены FTP серверы (pure-ftpd) в пассивном режиме (порты 10000-11000). Настройки ftp одинаковы. На обоих установлен ufw так же с одинаковыми правилами.

Почти все клиенты, в виде промышленного оборудования, успешно подключаются и передают файлы как на «старый», так и на «новый» серверы. Но есть пара клиентов использующих древние модемы в которых исходящий порт фиксирован и равен 1024. Эти клиенты могут взаимодействовать только со «старым» сервером. При попытке подключиться к «новому», модем выдает ошибку.
У других клиентов порт случайный в диапазоне 30000-60000. Они подключаются успешно.

Вопрос. Почему «старый» сервер обрабатывает подключения от клиента с портом 1024, а «новый» нет?

Результаты теста с другой машины:

hping3 -S -p 21 -s 1024 -k old_server_ip
en=44 ip=old_server_ip ttl=54 DF id=0 sport=21 flags=SA seq=0  win=64240 rtt=31.8 ms
hping3 -S -p 21 -s 1024 -k new_server_ip
тишина (с 1024, 1023 и ниже)

но с 1025 портом все работает

hping3 -S -p 21 -s 1025 -k new_server_ip
len=44 ip=new_server_ip ttl=50 DF id=0 sport=21 flags=SA seq=0 win=64240 rtt=31.9 ms

На новом tcpdump молчит с 1024 портом.

tcpdump -i any port 21 -n
netstat -tuln | grep :1024
нет вывода

Проверял не только на порте 21, но на всех открытых (20, 22, 80..)

 , ,

Garoldy
()

Си, инициализация указателя на функцию

Среда IAR_ARM.

typedef struct
{
	int (*f_calc)(void *);
}ABC;

int func1(ABC *p)
{  
  return 1;
}

const ABC mas[1]={func1};

int main()
{
  return 0;
}

Получаю ошибку. Возможна ли операция инициализации указателя,в структуре, на функцию, если эта же структура является входным параметром для функции? Error[Pe144]: a value of type «int (*)(ABC *)» cannot be used to initialize an entity of type «int (*)(void *)»

 ,

Garoldy
()

RSS подписка на новые темы