При использовании TCP, когда ваша программа (или используемая вами библиотека) вызывает accept(2)
, вторым аргументом является вывод, который сообщает вам адрес клиента.
При использовании UDP нет соединений, но естьравен recvfrom(2)
, что так же, как accept(2)
, дает адрес партнера.Таким образом, вы можете игнорировать одноранговые узлы, которые вам не нравятся.
Или вы можете запустить свой сервер за каким-то брандмауэром и добавить туда правила, или использовать iptables или аналогичный в качестве программного брандмауэра на хост-компьютере.1008 *
В SFML у вас есть SocketTCP::Accept
и SocketUDP::Receive
, каждый из которых даст вам адрес партнера, если вы передадите пустой адрес в качестве аргумента.