Força a aplicação a usar uma porta específica na máquina do Fedora

3

Eu tenho um aplicativo na minha máquina fedora que envia solicitações TCP SIP para o servidor. O aplicativo escolhe uma porta de origem aleatória para enviar as solicitações. Existe alguma maneira que eu possa forçar o aplicativo a usar uma porta específica (digamos 15000). Posso, talvez, bloquear o aplicativo de usar todas as outras portas (e então ele terá que escolher uma única porta de origem)?

Observe que não posso alterar o código do aplicativo SIP para usar uma porta de origem predefinida para o soquete.

    
por Rishabh 26.08.2014 / 14:23

1 resposta

0

Você pode querer dar uma olhada na ferramenta de linha de comando socat para simular conexões de todos os tipos (TCP, UDP, etc.). Há uma lista bastante extensa de exemplos de socat aqui, intitulada: Exemplos para usar socat (e filan) .

Exemplo

$ socat - TCP:www.google.com:80 | head
GET /
HTTP/1.0 200 OK
Date: Tue, 26 Aug 2014 13:22:09 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Set-Cookie: PREF=ID=31cc21da7fe930ae:FF=0:TM=1409059329:LM=1409059329:S=w1SmnrWq9nT2Ear-; expires=Thu, 25-Aug-2016 13:22:09 GMT; path=/; domain=.google.com
Set-Cookie: NID=67=PU8zfz-m-jwq17Jm2aixtDA1zi4H9JLpp6fXYAMS9V8xWpjBquGtng88Lf8wO-n8dUTjtneA2zon405GDYiqzsss_-HT44S5WgExWu7IrsEcqfBeguWB_oUEqlblJICL; expires=Wed, 25-Feb-2015 13:22:09 GMT; path=/; domain=.google.com; HttpOnly
P3P: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."
Server: gws
X-XSS-Protection: 1; mode=block
2014/08/26 09:22:09 socat[28871] E write(1, 0x7f1c063ad9b0, 1418): Broken pipe

O texto acima mostra como me conectar a um servidor da web em www.google.com na porta 80 e enviar a solicitação de GET / . Esta é uma consulta padrão que seu navegador faria se estivesse fazendo a mesma coisa.

Quanto a forçar seu cliente a uma porta específica, isso deve ser possível, precisamos saber os detalhes de qual aplicativo é esse. Na maioria das vezes, os daemons de serviços incluem um switch cli, como -p 5000 , ou há uma linha em seus arquivos de configuração (se eles tiverem um) para fazer isso.

Eu daria uma olhada no uso dessa ferramenta em particular para determinar quais recursos ela fornece ou dê uma olhada na sua página de manual se ela tiver uma.

    
por 26.08.2014 / 15:26