InglêsFrancêsEspanhol

Ad


favicon do OnWorks

filan - Online na nuvem

Execute filan no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando filan que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


socat - relé multiuso (SOcket CAT)

SINOPSE


socat [opções]
socat -V
socat -h [h [h]] | -? [? [?]]
blá blá
procano

DESCRIÇÃO


Socat é um utilitário baseado em linha de comando que estabelece dois fluxos de bytes bidirecionais e
transfere dados entre eles. Porque os fluxos podem ser construídos a partir de um grande conjunto de
diferentes tipos de coletores de dados e fontes (ver tipos de endereço), e porque muitos endereços
opções podem ser aplicadas aos fluxos, socat pode ser usado para muitos propósitos diferentes.

e assim por diante é um utilitário que imprime informações sobre seus descritores de arquivo ativos para stdout. Isto
foi escrito para depuração socat, mas também pode ser útil para outros fins. Use o
Opção -h para encontrar mais informações.

Procan é um utilitário que imprime informações sobre os parâmetros do processo em stdout. Tem
foi escrito para entender melhor algumas propriedades do processo UNIX e para depuração socat,
mas também pode ser útil para outros fins.

O ciclo de vida de um socat instância normalmente consiste em quatro fases.

No o init fase, as opções da linha de comando são analisadas e o registro é inicializado.

Durante a aberto Estágio, socat abre o primeiro endereço e depois o segundo endereço.
Essas etapas geralmente são bloqueadoras; assim, especialmente para tipos de endereços complexos como meias,
solicitações de conexão ou diálogos de autenticação devem ser concluídos antes que a próxima etapa seja
iniciado.

No transferência Estágio, socat observa os descritores de arquivo de leitura e gravação de ambos os fluxos por meio de
selecione (), e, quando os dados estiverem disponíveis em um lado e pode ser escrito para o outro lado,
socat lê, realiza conversões de caracteres de nova linha, se necessário, e grava os dados em
o descritor de arquivo de gravação do outro fluxo, então continua esperando por mais dados em
ambas direcoes.

Quando um dos fluxos efetivamente atinge EOF, o encerramento fase começa. Socat fáceis
a condição EOF para o outro fluxo, ou seja, tenta desligar apenas seu fluxo de gravação,
dando a chance de terminar normalmente. Por um tempo definido socat continua a transferir
dados na outra direção, mas então fecha todos os canais restantes e termina.

OPÇÕES


Socat fornece algumas opções de linha de comando que modificam o comportamento do programa. Elas
não tem nada a ver com as chamadas opções de endereço que são usadas como partes do endereço
especificações.

-V Imprima a versão e as informações de recursos disponíveis para saída padrão e saia.

-h | -?
Imprime um texto de ajuda para stdout descrevendo as opções de linha de comando e o endereço disponível
tipos e sair.

-hh | - ??
Como -h, mais uma lista de nomes curtos de todas as opções de endereço disponíveis. Algum
opções dependem da plataforma, portanto, esta saída é útil para verificar o
implementação particular.

-hhh | - ???
Como -hh, mais uma lista de todos os nomes de opções de endereço disponíveis.

-d Sem esta opção, apenas mensagens fatais e de erro são geradas; aplicando isso
opção também imprime mensagens de aviso. Consulte DIAGNÓSTICOS para obter mais informações.

-d -d Imprime mensagens fatais, de erro, de aviso e de aviso.

-d -d -d
Imprime mensagens fatais, de erro, de aviso, de aviso e de informação.

-d -d -d -d
Imprime mensagens fatais, de erro, aviso, aviso, informações e depuração.

-D Registra informações sobre os descritores de arquivo antes de iniciar a fase de transferência.

-ly [ ]
Grava mensagens no syslog em vez de no stderr; gravidade conforme definido com a opção -d.
Com opcional , o tipo de syslog pode ser selecionado, o padrão é "daemon".
Bibliotecas de terceiros podem não obedecer a esta opção.

-se
Escreve mensagens para [nome do arquivo] em vez de stderr. Algum terceiro
bibliotecas, em particular libwrap, podem não obedecer a esta opção.

-ls Grava mensagens em stderr (este é o padrão). Algumas bibliotecas de terceiros podem
não obedeça esta opção, em particular libwrap parece apenas registrar no syslog.

-lp
Substitui o nome do programa impresso nas mensagens de erro e usado para construir
nomes de variáveis ​​de ambiente.

-Lu Estende o carimbo de data / hora de mensagens de erro para resolução de microssegundos. Não funciona
ao fazer login no syslog.

-lm [ ]
Modo de registro misto. Durante a inicialização, as mensagens são impressas em stderr; quando socat começa
o loop de fase de transferência ou modo daemon (ou seja, depois de abrir todos os fluxos e antes
iniciar a transferência de dados, ou, com soquetes de escuta com opção de fork, antes do
primeiro aceite a chamada), ele muda o registro para syslog. Com opcional , a
O tipo de syslog pode ser selecionado, o padrão é "daemon".

-lh Adiciona o nome do host para registrar mensagens. Usa o valor da variável de ambiente HOSTNAME ou
o valor recuperado com uname () se HOSTNAME não estiver definido.

-v Grava os dados transferidos não apenas em seus fluxos de destino, mas também em stderr.
O formato de saída é o texto com algumas conversões para facilitar a leitura e prefixado com
">" ou "<" indicando direções de fluxo.

-x Grava os dados transferidos não apenas em seus fluxos de destino, mas também em stderr.
O formato de saída é hexadecimal, prefixado com ">" ou "<" indicando fluxo
instruções. Pode ser combinado com -v.

-b
Define o bloqueio de transferência de dados [size_t]. No máximo bytes são transferidos
por etapa. O padrão é 8192 bytes.

-s Por padrão, o socat termina quando ocorre um erro para evitar que o processo
em execução quando alguma opção não pôde ser aplicada. Com esta opção, socat é desleixado
com erros e tenta continuar. Mesmo com essa opção, o socat sairá em
fatals e abortará as tentativas de conexão quando as verificações de segurança falharem.

-t
Quando um canal atinge o EOF, a parte de gravação do outro canal é encerrada.
Em seguida, socat espera [timeval] segundos antes de encerrar. O padrão é 0.5
segundos. Este tempo limite só se aplica a endereços onde a parte escrita e lida pode ser
fechado de forma independente. Quando durante o intervalo de tempo limite a parte lida dá EOF,
socat termina sem esperar o tempo limite.

-T
Tempo limite de inatividade total: quando socat já está no loop de transferência e nada
aconteceu para [timeval] segundos (nenhum dado chegou, nenhuma interrupção
ocorreu ...) em seguida, ele termina. Útil com protocolos como UDP que não podem
transferir EOF.

-u Usa o modo unidirecional. O primeiro endereço é usado apenas para leitura, e o
o segundo endereço é usado apenas para escrita (exemplo).

-U Usa o modo unidirecional na direção reversa. O primeiro endereço é usado apenas para
escrita, e o segundo endereço é usado apenas para leitura.

-g Durante a análise da opção de endereço, não verifique se a opção é considerada útil em
o ambiente de endereço fornecido. Use-o se quiser forçar, por exemplo, o aparelho de um
opção de soquete para um dispositivo serial.

-EU
Se o arquivo de bloqueio existir, sai com erro. Se lockfile não existir, o cria e
continua, desvincula o arquivo de bloqueio na saída.

-C
Se lockfile existe, espera até que desapareça. Quando o arquivo de bloqueio não existe,
o cria e continua, desassocia o arquivo de bloqueio ao sair.

-4 Use a versão 4 do IP caso os endereços não especifiquem implícita ou explicitamente
uma versão; este é o padrão.

-6 Use a versão 6 do IP caso os endereços não especifiquem implícita ou explicitamente
uma versão.

ENDEREÇO ESPECIFICAÇÕES


Com os argumentos da linha de comando do endereço, o usuário fornece socat instruções e o
informações necessárias para estabelecer os fluxos de bytes.

Uma especificação de endereço geralmente consiste em uma palavra-chave do tipo de endereço, zero ou mais
parâmetros de endereço necessários separados por ':' da palavra-chave e entre si, e
zero ou mais opções de endereço separadas por ','.

A palavra-chave especifica o tipo de endereço (por exemplo, TCP4, OPEN, EXEC). Para algumas palavras-chave lá
existem sinônimos ('-' para STDIO, TCP para TCP4). Palavras-chave não diferenciam maiúsculas de minúsculas. Por pouco
tipos de endereços especiais, a palavra-chave pode ser omitida: especificações de endereço começando com um
número são assumidos como endereços FD (descritor de arquivo bruto); se um '/' for encontrado antes do
primeiro ':' ou ',', GOPEN (arquivo genérico aberto) é assumido.

O número necessário e o tipo de parâmetros de endereço dependem do tipo de endereço. Por exemplo, TCP4
requer uma especificação de servidor (nome ou endereço) e uma especificação de porta (número ou
Nome do Serviço).

Zero ou mais opções de endereço podem ser fornecidas com cada endereço. Eles influenciam o endereço em
algumas maneiras. As opções consistem em uma palavra-chave de opção ou uma palavra-chave de opção e um valor,
separados por '='. As palavras-chave das opções não diferenciam maiúsculas de minúsculas. Para filtrar as opções que
são úteis com um tipo de endereço, cada opção é membro de um grupo de opções. Para cada
tipo de endereço, há um conjunto de grupos de opções permitidos. Apenas opções pertencentes a um dos
esses grupos de endereços podem ser usados ​​(exceto com a opção -g).

As especificações de endereço que seguem o esquema acima também são chamadas solteiro endereço
especificações. Dois endereços únicos podem ser combinados com "!!" para formar um dual tipo
endereço para um canal. Aqui, o primeiro endereço é usado por socat para ler dados, e
o segundo endereço para escrever dados. Não há como especificar uma opção apenas uma vez para
sendo aplicado a ambos os endereços únicos.

Normalmente, os endereços são abertos no modo de leitura / gravação. Quando um endereço faz parte de uma dupla
especificação de endereço, ou quando a opção -u ou -U é usada, um endereço pode ser usado apenas para
ler ou escrever. Isso é importante com alguns tipos de endereço.

Com o socat versão 1.5.0 e superior, a análise lexical tenta lidar com citações e
parênteses de forma significativa e permite o escape de caracteres especiais. Se um dos
caracteres ({['é encontrado, o caractere de fechamento correspondente -)}]' - é procurado
para; eles também podem ser aninhados. Dentro dessas construções, personagens especiais de socats e
cordas : , !! não são tratados de forma especial. Todos esses caracteres e strings podem ser escapados
com \ ou dentro de ""

ENDEREÇO TIPOS


Esta seção descreve os tipos de endereço disponíveis com suas palavras-chave, parâmetros e
semântica.

CRIAR:
Abre com creat () e usa o descritor de arquivo para escrever. Esse
tipo de endereço requer contexto somente de gravação, porque um arquivo aberto com creat não pode
ser lido.
Sinalizadores como O_LARGEFILE não podem ser aplicados. Se você precisar deles, use OPEN com opções
crie, crie.
deve ser um caminho válido existente ou não existente. Se é um nomeado
tubo, creat () pode bloquear; E se refere-se a um soquete, isso é um erro.
Grupos de opções: FD, REG, NAMED
Opções úteis: modo, usuário, grupo, desvincular antecipadamente, desvincular tardiamente, anexar
Veja também: OPEN, GOPEN

EXEC:
Forks um subprocesso que estabelece comunicação com seu processo pai e
invoca o programa especificado com execvp (). é um comando simples
com argumentos separados por espaços simples. Se o nome do programa contém um '/', o
parte após o último '/' é considerada como ARGV [0]. Se o nome do programa for um parente
path, a semântica execvp () para localizar o programa por meio de $ PATH se aplica. Depois de
início do programa com sucesso, socat grava dados em stdin do processo e lê de
seu stdout usando um soquete de domínio UNIX gerado por socketpair () por padrão.
(exemplo)
Grupos de opções: FD, SOCKET, EXEC, FORK, TERMIOS
Opções úteis: caminho, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, pipes, login, sigint, sigquit
Veja também: SISTEMA

FD:
Usa o descritor de arquivo . Ele já deve existir como um arquivo UN * X válido
descritor.
Grupos de opções: FD (TERMIOS, REG, SOCKET)
Veja também: STDIO, STDIN, STDOUT, STDERR

GOPEN:
(Aberto genérico) Este tipo de endereço tenta lidar com qualquer entrada do sistema de arquivos, exceto
diretórios de forma útil. pode ser um caminho relativo ou absoluto. Se já
existe, seu tipo é verificado. No caso de um soquete de domínio UNIX, socat conecta; E se
a conexão falha, socat assume um soquete de datagrama e usa chamadas sendto (). Se o
entrada não é um soquete, socat abre aplicando o sinalizador O_APPEND. Se não
existir, ele é aberto com a bandeira O_CREAT como um arquivo regular (exemplo).
Grupos de opções: FD, REG, SOCKET, NAMED, OPEN
Veja também: OPEN, CREATE, UNIX-CONNECT

IP-SENDTO: :
Abre um soquete IP bruto. Dependendo da especificação do host ou opção pf, protocolo IP
versão 4 ou 6 é usada. Usa enviar pacotes para [Endereço de IP]
e recebe pacotes do host, ignora os pacotes de outros hosts. Protocolo 255
usa o socket raw com o cabeçalho IP fazendo parte dos dados.
Grupos de opções: FD, SOCKET, IP4, IP6
Opções úteis: pf, ttl
Veja também: IP4-SENDTO, IP6-SENDTO, IP-RECVFROM, IP-RECV, UDP-SENDTO, UNIX-SENDTO

INTERFACE:
Comunica-se com uma rede conectada em uma interface usando pacotes brutos, incluindo
dados de nível de link. é o nome da interface de rede. Atualmente apenas
disponível no Linux. Grupos de opções: FD, SOCKET
Opções úteis: pf, tipo
Veja também: ip-recv

IP4-SENDTO: :
Como IP-SENDTO, mas sempre usa IPv4.
Grupos de opções: FD, SOCKET, IP4

IP6-SENDTO: :
Como IP-SENDTO, mas sempre usa IPv6.
Grupos de opções: FD, SOCKET, IP6

IP-DATAGRAM: :
Envia dados de saída para o endereço especificado, que pode ser, em particular, uma transmissão
ou endereço multicast. Os pacotes que chegam ao soquete local são verificados se seus
os endereços de origem correspondem às opções RANGE ou TCPWRAP. Este tipo de endereço pode, por exemplo
ser usado para implementar transmissão simétrica ou assimétrica ou multicast
comunicações.
Grupos de opções: FD, SOCKET, IP4, IP6, RANGE
Opções úteis: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-associação, ttl, tos, pf
Veja também: IP4-DATAGRAM, IP6-DATAGRAM, IP-SENDTO, IP-RECVFROM, IP-RECV, UDP-DATAGRAM

IP4-DATAGRAM: :
Como IP-DATAGRAM, mas sempre usa IPv4. (exemplo)
Grupos de opções: FD, SOCKET, IP4, RANGE

IP6-DATAGRAM: :
Como IP-DATAGRAM, mas sempre usa IPv6. Observe que o IPv6 não sabe
Transmissões.
Grupos de opções: FD, SOCKET, IP6, RANGE

IP-RECVFROM:
Abre um soquete de IP bruto de . Dependendo da opção pf, protocolo IP versão 4
ou 6 é usado. Ele recebe um pacote de um par não especificado e pode enviar um ou
mais pacotes de resposta para esse par. Este modo é particularmente útil com garfo
opção onde cada pacote que chega - de pares arbitrários - é tratado por seu próprio
subprocesso. Isso permite um comportamento semelhante ao de servidores baseados em UDP típicos, como
ntpd ou nomeado.
Observe que os pacotes de resposta podem ser obtidos como tráfego de entrada quando o remetente
e o endereço IP do receptor são idênticos porque não há número de porta para
distinguir os soquetes.
Este endereço funciona bem com os pares de endereços IP-SENDTO (veja acima). Protocolo 255
usa o socket raw com o cabeçalho IP fazendo parte dos dados.
Grupos de opções: FD, SOCKET, IP4, IP6, CHILD, RANGE
Opções úteis: pf, fork, range, ttl, broadcast
Veja também: IP4-RECVFROM, IP6-RECVFROM, IP-SENDTO, IP-RECV, UDP-RECVFROM,
UNIX-RECVFROM

IP4-RECVFROM:
Como IP-RECVFROM, mas sempre usa IPv4.
Grupos de opções: FD, SOCKET, IP4, CHILD, RANGE

IP6-RECVFROM:
Como IP-RECVFROM, mas sempre usa IPv6.
Grupos de opções: FD, SOCKET, IP6, CHILD, RANGE

IP-RECV:
Abre um soquete de IP bruto de . Dependendo da opção pf, protocolo IP versão 4
ou 6 é usado. Ele recebe pacotes de vários pares não especificados e mescla o
dados. Nenhuma resposta é possível. Pode ser, por exemplo, endereçado por socat IP-SENDTO
endereços de pares. O protocolo 255 usa o soquete bruto com o cabeçalho IP sendo parte de
os dados.
Grupos de opções: FD, SOCKET, IP4, IP6, RANGE
Opções úteis: pf, intervalo
Veja também: IP4-RECV, IP6-RECV, IP-SENDTO, IP-RECVFROM, UDP-RECV, UNIX-RECV

IP4-RECV:
Como IP-RECV, mas sempre usa IPv4.
Grupos de opções: FD, SOCKET, IP4, RANGE

IP6-RECV:
Como IP-RECV, mas sempre usa IPv6.
Grupos de opções: FD, SOCKET, IP6, RANGE

ABRIR:
Abre usando a chamada de sistema open () (exemplo). Esta operação falha em
Soquetes de domínio UNIX.
Nota: Este tipo de endereço é raramente útil no modo bidirecional.
Grupos de opções: FD, REG, NAMED, OPEN
Opções úteis: creat, excl, noatime, nofollow, append, rdonly, wronly, lock,
readbytes, ignore de
Veja também: CREATE, GOPEN, UNIX-CONNECT

OPENSSL: :
Tenta estabelecer uma conexão SSL para [Serviço TCP] ligado [Endereço de IP]
usando TCP / IP versão 4 ou 6, dependendo da especificação do endereço, resolução do nome ou
opção pf.
NOTA: Até a versão 1.7.2.4, o certificado do servidor só era verificado quanto à validade
contra o armazenamento de certificado do sistema ou cafile ou capath, mas não para combinar com
o nome do servidor ou seu endereço IP. Desde a versão 1.7.3.0, o socat verifica o par
certificado para combinar com o parâmetro ou o valor do
opção openssl-commonname. O Socat tenta compará-lo com os certificados
subject commonName e os nomes DNS de extensão de certificações subjectAltName.
Há suporte para curingas no certificado.
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, OPENSSL, RETRY
Opções úteis: cifra, método, verificar, commonname cafile, capath, certificado,
chave, compactar, vincular, pf, tempo limite de conexão, porta de origem, nova tentativa
Veja também: OPENSSL-LISTEN, TCP

OPENSSL-LISTEN:
Ouve no tcp [Serviço TCP]. A versão IP é 4 ou aquela especificada com
pf. Quando uma conexão é aceita, este endereço se comporta como servidor SSL.
Observação: você provavelmente deseja usar a opção de certificado com este endereço.
NOTA: O certificado do cliente só é verificado para validade contra cafile ou capath,
mas não para combinar com o nome do cliente ou seu endereço IP!
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, LISTEN, OPENSSL, CHILD, RANGE, RETRY
Opções úteis: pf, cipher, method, verify, commonname cafile, capath, certificate,
chave, compactar, bifurcar, vincular, intervalo, tcpwrap, su, reuseaddr, repetir
Veja também: OPENSSL, TCP-LISTEN

TUBO:
Se já existe, está aberto. Se não existir, um canal nomeado é
criado e aberto. A partir da versão 1.4.3 do socat, o canal nomeado foi removido
quando o endereço está fechado (mas veja a opção desligar-fechar
Nota: Quando um pipe é usado para leitura e escrita, ele funciona como serviço de eco.
Observação: quando um cachimbo é usado para ler e escrever, e o socat tenta escrever
mais bytes do que o canal pode armazenar em buffer (Linux 2.4: 2048 bytes), o socat pode bloquear.
Considere usar a opção socat, por exemplo, -b 2048
Grupos de opções: FD, NAMED, OPEN
Opções úteis: rdonly, nonblock, group, user, mode, unlink-early
Veja também: tubo sem nome

TUBO Cria um canal sem nome e o usa para ler e escrever. Funciona como um eco,
porque tudo escrito nele aparece imediatamente como dados lidos.
Observação: quando socat tenta gravar mais bytes do que o canal pode enfileirar (Linux 2.4: 2048
bytes), socat pode bloquear. Considere, por exemplo, usar a opção -b 2048
Grupos de opções: FD
Veja também: pipe nomeado

PROXY: : :
Conecta-se a um servidor proxy HTTP na porta 8080 usando TCP / IP versão 4 ou 6
dependendo da especificação do endereço, resolução do nome ou opção pf, e envia um
Solicitação CONNECT para hostname: port. Se o proxy conceder acesso e conseguir
conecte-se ao alvo, a transferência de dados entre o socat e o alvo pode começar. Observação
que o tráfego não precisa ser HTTP, mas pode ser um protocolo arbitrário.
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, HTTP, RETRY
Opções úteis: proxyport, ignorecr, proxyauth, resolve, crnl, bind,
tempo limite de conexão, mss, porta de origem, tentativa
Veja também: SOCKS, TCP

PTY Gera um pseudo terminal (pty) e usa seu lado mestre. Outro processo pode
abra o lado escravo do pty usando-o como uma linha serial ou terminal. (exemplo). Se
ambos os mecanismos ptmx e openpty estão disponíveis, ptmx é usado (POSIX).
Grupos de opções: FD, NAMED, PTY, TERMIOS
Opções úteis: link, openpty, wait-slave, modo, usuário, grupo
Veja também: UNIX-LISTEN, PIPE, EXEC, SYSTEM

LEIA A LINHA
Usa linha de leitura GNU e histórico em stdio para permitir a edição e reutilização de linhas de entrada
(exemplo).
Devido a restrições de licença, o recurso readline está desabilitado no Debian. Ver
INSETOS.
Você pode usar STDIO em seu lugar.

SCTP-CONNECT: :
Estabelece uma conexão de fluxo SCTP com o especificado [Endereço IP] e
[Serviço TCP] usando TCP / IP versão 4 ou 6 dependendo do endereço
especificação, resolução de nome ou opção pf.
Grupos de opções: FD, SOCKET, IP4, IP6, SCTP, CHILD, RETRY
Opções úteis: bind, pf, connect-timeout, tos, mtudiscover, sctp-maxseg,
sctp-nodelay, sem bloqueio, sourceport, nova tentativa, readbytes
Consulte também: SCTP4-CONNECT, SCTP6-CONNECT, SCTP-LISTEN, TCP-CONNECT

SCTP4-CONNECT: :
Como o SCTP-CONNECT, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, IP4, SCTP, CHILD, RETRY

SCTP6-CONNECT: :
Como o SCTP-CONNECT, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6, SCTP, CHILD, RETRY

SCTP-LISTEN:
Ouve em [Serviço TCP] e aceita uma conexão TCP / IP. A versão IP é
4 ou aquele especificado com a opção de endereço pf, opção socat (-4, -6) ou
variável de ambiente SOCAT_DEFAULT_LISTEN_IP. Observe que ao abrir este endereço
geralmente bloqueia até que um cliente se conecte.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6, SCTP, RETRY
Opções úteis: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog,
sctp-maxseg, sctp-nodelay, su, reusaraddr, retry, cool-write
Veja também: SCTP4-LISTEN, SCTP6-LISTEN, TCP-LISTEN, SCTP-CONNECT

SCTP4-LISTEN:
Como SCTP-LISTEN, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, SCTP, RETRY

SCTP6-LISTEN:
Como SCTP-LISTEN, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP6, SCTP, RETRY

SOCKET-CONNECT: : :
Cria um soquete de fluxo usando o primeiro e o segundo parâmetros de soquete fornecidos e
SOCK_STREAM (veja man socket \ (2)) e se conecta ao endereço remoto. Os dois
os parâmetros de soquete devem ser especificados por números inteiros. Consulte o seu sistema operacional
documentação e incluir arquivos para encontrar os valores apropriados. O endereço remoto
deve ser a representação de dados de uma estrutura sockaddr sem sa_family e (BSD)
componentes sa_len.
Observe que você pode - além das opções dos grupos especificados - também usar
opções de protocolos de nível superior ao aplicar a opção socat -g.
Grupos de opções: FD, SOCKET, CHILD, RETRY
Opções úteis: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO

SOCKET-DATAGRAM: : : :
Cria um socket de datagrama usando os três primeiros parâmetros de socket dados (ver man
socket \ (2)) e envia dados de saída para o endereço remoto. Os três soquetes
os parâmetros devem ser especificados por números inteiros. Consulte a documentação do seu sistema operacional e
inclua arquivos para encontrar os valores apropriados. O endereço remoto deve ser os dados
representação de uma estrutura sockaddr sem sa_family e (BSD) sa_len
componentes.
Observe que você pode - além das opções dos grupos especificados - também usar
opções de protocolos de nível superior ao aplicar a opção socat -g.
Grupos de opções: FD, SOCKET, RANGE
Opções úteis: bind, range, setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: UDP-DATAGRAM, IP-DATAGRAM, SOCKET-SENDTO, SOCKET-RECV, SOCKET-RECVFROM

SOCKET-LISTEN: : :
Cria um soquete de fluxo usando o primeiro e o segundo parâmetros de soquete fornecidos e
SOCK_STREAM (ver man socket \ (2)) e espera por conexões de entrada em
Endereço local. Os dois parâmetros de soquete devem ser especificados por números inteiros.
Consulte a documentação do seu sistema operacional e inclua arquivos para encontrar os valores apropriados. o
endereço local deve ser a representação de dados de uma estrutura sockaddr sem
componentes sa_family e (BSD) sa_len.
Observe que você pode - além das opções dos grupos especificados - também usar
opções de protocolos de nível superior ao aplicar a opção socat -g.
Grupos de opções: FD, SOCKET, LISTEN, RANGE, CHILD, RETRY
Opções úteis: setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO,
TOMADA-SENDTO

SOCKET-RECV: : : :
Cria um socket usando os três parâmetros de socket dados (veja man socket \ (2)) e
liga-se a . Recebe dados que chegam. Os três parâmetros devem
ser especificado por números int. Consulte a documentação do seu sistema operacional e inclua arquivos para
encontre os valores apropriados. O endereço local deve ser a representação de dados de um
estrutura sockaddr sem componentes sa_family e (BSD) sa_len.
Grupos de opções: FD, SOCKET, RANGE
Opções úteis: range, setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: UDP-RECV, IP-RECV, UNIX-RECV, SOCKET-DATAGRAM, SOCKET-SENDTO,
TOMADA-RECVFROM

SOCKET-RECVFROM: : : :
Cria um socket usando os três parâmetros de socket dados (veja man socket \ (2)) e
liga-se a . Recebe dados que chegam e envia respostas de volta para o
remetente. Os primeiros três parâmetros devem ser especificados como números inteiros. Consultar
a documentação do seu sistema operacional e inclua arquivos para encontrar os valores apropriados. o
endereço local deve ser a representação de dados de uma estrutura sockaddr sem
componentes sa_family e (BSD) sa_len.
Grupos de opções: FD, SOCKET, CHILD, RANGE
Opções úteis: fork, range, setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: UDP-RECVFROM, IP-RECVFROM, UNIX-RECVFROM, SOCKET-DATAGRAM, SOCKET-SENDTO,
SOQUETE-RECV

SOCKET-SENDTO: : : :
Cria um socket usando os três parâmetros de socket dados (veja man socket \ (2)).
Envia dados de saída para o endereço fornecido e recebe respostas. Os três
os parâmetros devem ser especificados como números inteiros. Consulte a documentação do seu sistema operacional e
inclua arquivos para encontrar os valores apropriados. O endereço remoto deve ser os dados
representação de uma estrutura sockaddr sem sa_family e (BSD) sa_len
componentes.
Grupos de opções: FD, SOCKET
Opções úteis: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Veja também: UDP-SENDTO, IP-SENDTO, UNIX-SENDTO, SOCKET-DATAGRAM, SOCKET-RECV
TOMADA-RECVFROM

SOCKS4: : :
Conecta via [Endereço IP] para [Endereço IPv4] em [TCP
serviço], usando protocolo socks versão 4 sobre IP versão 4 ou 6, dependendo de
especificação de endereço, resolução de nome ou opção pf (exemplo).
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, SOCKS4, RETRY
Opções úteis: socksuser, socksport, sourceport, pf, retry
Veja também: SOCKS4A, PROXY, TCP

SOCKS4A: : :
como SOCKS4, mas usa o protocolo socks versão 4a, deixando assim a resolução do nome do host
para o servidor socks.
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, SOCKS4, RETRY

STDERR Usa o descritor de arquivo 2.
Grupos de opções: FD (TERMIOS, REG, SOCKET)
Veja também: FD

STDIN Usa o descritor de arquivo 0.
Grupos de opções: FD (TERMIOS, REG, SOCKET)
Opções úteis: readbytes
Veja também: FD

ESTÁDIO Usa o descritor de arquivo 0 para leitura e 1 para gravação.
Grupos de opções: FD (TERMIOS, REG, SOCKET)
Opções úteis: readbytes
Veja também: FD

STDOUT Usa o descritor de arquivo 1.
Grupos de opções: FD (TERMIOS, REG, SOCKET)
Veja também: FD

SISTEMA:
Forks um subprocesso que estabelece comunicação com seu processo pai e
invoca o programa especificado com system (). Por favor, note que
[string] não deve conter ',' ou "!!", e os metacaracteres do shell podem ter que
ser protegido. Após o início bem-sucedido do programa, socat grava dados em stdin do
processar e ler a partir de seu stdout.
Grupos de opções: FD, SOCKET, EXEC, FORK, TERMIOS
Opções úteis: caminho, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, tubos, sigint, sigquit
Veja também: EXEC

TCP: :
Conecta-se a [Serviço TCP] ligado [Endereço IP] usando TCP / IP versão 4 ou 6
dependendo da especificação do endereço, resolução do nome ou opção pf.
Grupos de opções: FD, SOCKET, IP4, IP6, TCP, RETRY
Opções úteis: crnl, bind, pf, connect-timeout, tos, mtudiscover, mss, nodelay,
sem bloco, porta de origem, nova tentativa, bytes de leitura
Consulte também: TCP4, TCP6, TCP-LISTEN, UDP, SCTP-CONNECT, UNIX-CONNECT

TCP4: :
Como o TCP, mas só oferece suporte ao protocolo IPv4 (exemplo).
Grupos de opções: FD, SOCKET, IP4, TCP, RETRY

TCP6: :
Como o TCP, mas só oferece suporte ao protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6, TCP, RETRY

TCP-LISTEN:
Ouve em [Serviço TCP] e aceita uma conexão TCP / IP. A versão IP é
4 ou aquele especificado com a opção de endereço pf, opção socat (-4, -6) ou
variável de ambiente SOCAT_DEFAULT_LISTEN_IP. Observe que ao abrir este endereço
geralmente bloqueia até que um cliente se conecte.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6, TCP, RETRY
Opções úteis: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog, mss,
su, reuseaddr, repetir, legal-escrever
Veja também: TCP4-LISTEN, TCP6-LISTEN, UDP-LISTEN, SCTP-LISTEN, UNIX-LISTEN,
OPENSSL-OUVIR, TCP-CONNECT

TCP4-LISTEN:
Como o TCP-LISTEN, mas suporta apenas o protocolo IPv4 (exemplo).
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, TCP, RETRY

TCP6-LISTEN:
Como o TCP-LISTEN, mas suporta apenas o protocolo IPv6.
Opção útil adicional: ipv6only
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP6, TCP, RETRY

TUN [: / ]
Cria um dispositivo Linux TUN / TAP e, opcionalmente, atribui a ele o endereço e a máscara de rede
dado pelos parâmetros. A interface de rede resultante está quase pronta para uso por
outros processos; socat serve seu "lado do fio". Este endereço requer leitura e gravação
acesso ao dispositivo de clonagem de túnel, geralmente / dev / net / tun, bem como permissão
para definir alguns ioctl () s. Opção em caso positivo is requeridos para imediatamente ativado que o
interface!
Grupos de opções: FD, NAMED, OPEN, TUN
Opções úteis: iff-up, tun-device, tun-name, tun-type, iff-no-pi
Veja também: ip-recv

UDP: :
Conecta-se a [Serviço UDP] em [Endereço IP] usando UDP / IP versão 4 ou 6
dependendo da especificação do endereço, resolução do nome ou opção pf.
Observe que, devido às propriedades do protocolo UDP, nenhuma conexão real é
estabelecido; os dados têm que ser enviados para `conectar 'ao servidor, e sem fim de arquivo
condição pode ser transportada.
Grupos de opções: FD, SOCKET, IP4, IP6
Opções úteis: ttl, tos, bind, sourceport, pf
Veja também: UDP4, UDP6, UDP-LISTEN, TCP, IP

UDP4: :
Como UDP, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, IP4

UDP6: :
Como UDP, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6

UDP-DATAGRAM: :
Envia dados de saída para o endereço especificado, que pode ser, em particular, uma transmissão
ou endereço multicast. Os pacotes que chegam no soquete local são verificados quanto ao
porta remota correta e se seus endereços de origem correspondem às opções RANGE ou TCPWRAP.
Este tipo de endereço pode, por exemplo, ser usado para implementação simétrica ou assimétrica
difusão ou comunicações multicast.
Grupos de opções: FD, SOCKET, IP4, IP6, RANGE
Opções úteis: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-membership, ttl, tos, sourceport, pf
Veja também: UDP4-DATAGRAM, UDP6-DATAGRAM, UDP-SENDTO, UDP-RECVFROM, UDP-RECV,
UDP-CONNECT, UDP-LISTEN, IP-DATAGRAM

UDP4-DATAGRAM: :
Como UDP-DATAGRAM, mas suporta apenas o protocolo IPv4 (exemplo1, exemplo2).
Grupos de opções: FD, SOCKET, IP4, RANGE

UDP6-DATAGRAM: :
Como UDP-DATAGRAM, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6, RANGE

UDP-LISTEN:
Aguarda a chegada de um pacote UDP / IP em [Serviço UDP] e `conecta 'de volta para
remetente. A versão IP aceita é 4 ou aquela especificada com a opção pf. Por favor
observe que, devido às propriedades do protocolo UDP, nenhuma conexão real é estabelecida; dados
tem que chegar do par primeiro, e nenhuma condição de fim de arquivo pode ser transportada.
Observe que a abertura desse endereço geralmente bloqueia até que um cliente se conecte.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6
Opções úteis: fork, bind, range, pf
Veja também: UDP, UDP4-LISTEN, UDP6-LISTEN, TCP-LISTEN

UDP4-LISTEN:
Como UDP-LISTEN, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP4

UDP6-LISTEN:
Como UDP-LISTEN, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, LISTEN, CHILD, RANGE, IP6

UDP-SENDTO: :
Comunica-se com o soquete de par especificado, definido por [Serviço UDP] em
[Endereço IP], usando UDP / IP versão 4 ou 6 dependendo do endereço
especificação, resolução de nome ou opção pf. Ele envia pacotes para e recebe
pacotes desse soquete de mesmo nível. Este endereço implementa efetivamente um datagrama
cliente. Funciona bem com os pares de endereço socat UDP-RECVFROM e UDP-RECV.
Grupos de opções: FD, SOCKET, IP4, IP6
Opções úteis: ttl, tos, bind, sourceport, pf
Veja também: UDP4-SENDTO, UDP6-SENDTO, UDP-RECVFROM, UDP-RECV, UDP-CONNECT,
UDP-ESCUTA, IP-SENDTO

UDP4-SENDTO: :
Como UDP-SENDTO, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, IP4

UDP6-SENDTO: :
Como UDP-SENDTO, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6

UDP-RECVFROM:
Cria um soquete UDP em [Serviço UDP] usando UDP / IP versão 4 ou 6, dependendo
na opção pf. Ele recebe um pacote de um par não especificado e pode enviar um ou
mais pacotes de resposta para esse par. Este modo é particularmente útil com a opção de garfo
onde cada pacote que chega - de pares arbitrários - é tratado por seu próprio sub
processo. Isso permite um comportamento semelhante ao de servidores baseados em UDP típicos, como ntpd ou
nomeado. Este endereço funciona bem com pares de endereços socat UDP-SENDTO.
Grupos de opções: FD, SOCKET, IP4, IP6, CHILD, RANGE
Opções úteis: fork, ttl, tos, bind, sourceport, pf
Veja também: UDP4-RECVFROM, UDP6-RECVFROM, UDP-SENDTO, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-RECVFROM, UNIX-RECVFROM

UDP4-RECVFROM:
Como UDP-RECVFROM, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, IP4, CHILD, RANGE

UDP6-RECVFROM:
Como UDP-RECVFROM, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6, CHILD, RANGE

UDP-RECV:
Cria um soquete UDP em [Serviço UDP] usando UDP / IP versão 4 ou 6, dependendo
na opção pf. Ele recebe pacotes de vários pares não especificados e mescla o
dados. Nenhuma resposta é possível. Funciona bem com, por exemplo, endereço socat UDP-SENDTO
pares; ele se comporta de forma semelhante a um servidor syslog.
Grupos de opções: FD, SOCKET, IP4, IP6, RANGE
Opções úteis: fork, pf, bind, sourceport, ttl, tos
Veja também: UDP4-RECV, UDP6-RECV, UDP-SENDTO, UDP-RECVFROM, UDP-CONNECT, UDP-LISTEN,
IP-RECV, UNIX-RECV

UDP4-RECV:
Como UDP-RECV, mas suporta apenas o protocolo IPv4.
Grupos de opções: FD, SOCKET, IP4, RANGE

UDP6-RECV:
Como UDP-RECV, mas suporta apenas o protocolo IPv6.
Grupos de opções: FD, SOCKET, IP6, RANGE

UNIX-CONNECT:
Conecta-se a presumindo que seja um soquete de domínio UNIX. Se não
existir, isso é um erro; E se não é um soquete de domínio UNIX, este é um
erro; E se é um soquete de domínio UNIX, mas nenhum processo está escutando, este é
um erro.
Grupos de opções: FD, SOCKET, NAMED, RETRY, UNIX
) Opções úteis: vincular
Veja também: UNIX-LISTEN, UNIX-SENDTO, TCP

UNIX-LISTEN:
Ouve em usando um soquete de fluxo de domínio UNIX e aceita uma conexão.
Se existe e não é um soquete, isso é um erro. Se existe
e é um soquete de domínio UNIX, a ligação ao endereço falha (use a opção
desligar antecipadamente!). Observe que a abertura deste endereço geralmente bloqueia até que um cliente
conecta. A partir do socat versão 1.4.3, a entrada do sistema de arquivos foi removida
quando este endereço é fechado (mas veja a opção unlink-close) (exemplo).
Grupos de opções: FD, SOCKET, NAMED, LISTEN, CHILD, RETRY, UNIX
Opções úteis: fork, umask, mode, user, group, unlink-early
Consulte também: UNIX-CONNECT, UNIX-RECVFROM, UNIX-RECV, TCP-LISTEN

UNIX-SENDTO:
Comunica-se com o soquete de mesmo nível especificado, definido por [ ] assumindo que seja
um soquete de datagrama de domínio UNIX. Ele envia pacotes para e recebe pacotes desse
soquete de peer apenas. Observe que pode ser necessário ligar o soquete local
para um endereço (por exemplo, / tmp / sock1, que não deve existir antes). Este tipo de endereço
funciona bem com pontos de endereço socat UNIX-RECVFROM e UNIX-RECV.
Grupos de opções: FD, SOCKET, NAMED, UNIX
Opções úteis: vincular
Consulte também: UNIX-RECVFROM, UNIX-RECV, UNIX-CONNECT, UDP-SENDTO, IP-SENDTO

UNIX-RECVFROM:
Cria um soquete de datagrama de domínio UNIX [ ] Recebe um pacote e pode
envie um ou mais pacotes de resposta a esse par. Este modo é particularmente útil
com opção fork onde cada pacote que chega - de pares arbitrários - é tratado por
seu próprio subprocesso. Este endereço funciona bem com pares de endereços socat UNIX-SENDTO.
Grupos de opções: FD, SOCKET, NAMED, CHILD, UNIX
Opções úteis: garfo
Consulte também: UNIX-SENDTO, UNIX-RECV, UNIX-LISTEN, UDP-RECVFROM, IP-RECVFROM

UNIX-RECV:
Cria um soquete de datagrama de domínio UNIX [ ] Recebe pacotes de vários
peers não especificados e mescla os dados. Nenhuma resposta é possível. Pode ser, por exemplo,
endereçado por pares de endereços socat UNIX-SENDTO. Ele se comporta de forma semelhante a um syslog
servidor. Grupos de opções: FD, SOCKET, NAMED, UNIX
Consulte também: UNIX-SENDTO, UNIX-RECVFROM, UNIX-LISTEN, UDP-RECV, IP-RECV

CLIENTE UNIX:
Comunica-se com o soquete de mesmo nível especificado, definido por [ ] assumindo que seja
um soquete de domínio UNIX. Ele primeiro tenta se conectar e, se isso falhar, assume que é
um soquete de datagrama, suportando assim os dois tipos.
Grupos de opções: FD, SOCKET, NAMED, UNIX
Opções úteis: vincular
Veja também: UNIX-CONNECT, UNIX-SENDTO, GOPEN

RESUMO-CONNECT:

ABSTRACT-LISTEN:

RESUMO-SENDTO:

RESUMO-RECVFROM:

RESUMO-RECV:

RESUMO-CLIENTE:
Os endereços ABSTRACT são quase idênticos aos endereços UNIX relacionados, exceto
que eles não abordam sockets baseados em sistema de arquivos, mas um domínio UNIX alternativo
espaço de endereço. Para arquivar isso, as strings de endereço de soquete são prefixadas com "\ 0"
internamente. Este recurso está disponível (apenas?) No Linux. Os grupos de opções são iguais
como com os endereços UNIX relacionados, exceto que os endereços ABSTRACT não são
membro do grupo NAMED.

ENDEREÇO OPÇÕES


As opções de endereço podem ser aplicadas para endereçar especificações para influenciar o processo de
abrindo os endereços e as propriedades dos canais de dados resultantes.

Por razões técnicas, nem todas as opções podem ser aplicadas a todos os tipos de endereço; por exemplo,
a aplicação de uma opção de soquete a um arquivo regular falhará. Para pegar as combinações mais inúteis
já na fase aberta, o conceito de opção grupos foi introduzido. Cada opção
pertence a um ou mais grupos de opções. As opções podem ser usadas apenas com tipos de endereço que
suporta pelo menos um de seus grupos de opções (mas consulte a opção -g).

As opções de endereço têm tipos de dados aos quais seus valores devem estar em conformidade. Cada opção de endereço
consiste em apenas uma palavra-chave ou uma palavra-chave seguida por "= valor", onde o valor deve estar em conformidade com
o tipo de opções. Algumas opções de endereço manipulam parâmetros de chamadas do sistema; por exemplo,
A opção sync define o sinalizador O_SYNC com a chamada open (). Outras opções causam um sistema ou
chamada de biblioteca; por exemplo, com a opção `ttl = valor 'o setsockopt (fd, SOL_IP, IP_TTL, valor,
chamada sizeof (int)) é aplicada. Outras opções definidas internas socat variáveis ​​que são usadas
durante a transferência de dados; por exemplo, `crnl 'causa conversões explícitas de caracteres. Algumas opções
têm implementações mais complexas; por exemplo, su-d (atrasado pelo subusuário) pergunta a algum usuário e
agrupar informações, armazená-las e aplicá-las posteriormente, após uma possível chamada de chroot ().

Se várias opções forem fornecidas a um endereço, sua sequência na especificação do endereço
tem (quase) nenhum efeito na sequência de sua execução / aplicação. Em vez de, socat tem
construído em um opção fase modelo que tenta trazer as opções em uma ordem útil. Algum
opções existem em diferentes formas (por exemplo, desvincular, desvincular antecipadamente, desvincular tardiamente) para controlar o
momento de sua execução.

Se a mesma opção for especificada mais de uma vez em uma especificação de endereço, com
valores iguais ou diferentes, o efeito depende do tipo de opção. Opções resultando em
chamadas de função como setsockopt () causam múltiplas invocações. Com opções que definem
parâmetros para uma chamada necessária, como open () ou definir sinalizadores internos, o valor do último
a ocorrência da opção é efetiva.

A existência ou semântica de muitas opções depende do sistema. Socat normalmente NÃO
tente emular libc ou recursos do kernel ausentes, ele apenas fornece uma interface para o
sistema subjacente. Portanto, se um sistema operacional não tiver um recurso, a opção relacionada é
simplesmente não está disponível nesta plataforma.

Os parágrafos a seguir apresentam apenas as opções de endereço mais comuns. Por mais
referência abrangente e para encontrar informações sobre nomes de opções canônicas, nomes de alias,
fases de opção e plataformas, consulte o arquivo xio.help.

FD opção grupo

Este grupo de opções contém opções que são aplicadas a um descritor de arquivo estilo UN * X, não
importa como foi gerado. Porque todos atuais socat tipos de endereço são descritores de arquivo
com base, essas opções podem ser aplicadas a qualquer endereço.
Observação: algumas dessas opções também são membros de outro grupo de opções, que fornece
outro mecanismo não baseado em fd. Para essas opções, depende do tipo de endereço real
e seus grupos de opções qual mecanismo é usado. O segundo mecanismo não baseado em fd é
priorizado.

cloexec =
Define o sinalizador FD_CLOEXEC com a chamada do sistema fcntl () para valor . Se definido, o
o descritor de arquivo é fechado nas chamadas de função da família exec (). Socat lida internamente
este sinalizador para o fds que ele controla, portanto, na maioria dos casos, não haverá necessidade de aplicar
esta opção.

definir Tenta definir um bloqueio de gravação discricionário para todo o arquivo usando o fcntl (fd,
F_SETLK, ...) chamada do sistema. Se o arquivo já estiver bloqueado, esta chamada resultará em um
erro. No Linux, quando as permissões de arquivo para o grupo são "S" (gx, g + s), e o
sistema de arquivos é montado localmente com a opção "mand", o bloqueio é obrigatório, ou seja,
impede que outros processos abram o arquivo.

definir Tenta definir um bloqueio de gravação em espera discricionário para todo o arquivo usando o
chamada de sistema fcntl (fd, F_SETLKW, ...). Se o arquivo já estiver bloqueado, esta chamada
blocos. Consulte a opção setlk para obter informações sobre como tornar esse bloqueio obrigatório.

setlk-rd
Tenta definir um bloqueio de leitura discricionário para todo o arquivo usando o fcntl (fd,
F_SETLK, ...) chamada do sistema. Se o arquivo já estiver bloqueado para gravação, esta chamada resultará
em um erro. Consulte a opção setlk para obter informações sobre como tornar esse bloqueio obrigatório.

setlkw-rd
Tenta definir um bloqueio de leitura em espera discricionário para todo o arquivo usando o
chamada de sistema fcntl (fd, F_SETLKW, ...). Se o arquivo já estiver bloqueado para gravação, este
blocos de chamadas. Consulte a opção setlk para obter informações sobre como tornar esse bloqueio obrigatório.

rebanho ex
Tenta definir um bloqueio de aviso exclusivo de bloqueio para o arquivo usando o flock (fd,
LOCK_EX) chamada de sistema. Socat interrompe esta chamada se o arquivo estiver bloqueado por outro
processo.

rebanho-ex-nb
Tenta definir um bloqueio de aviso exclusivo não bloqueador para o arquivo usando o flock (fd,
LOCK_EX | LOCK_NB) chamada de sistema. Se o arquivo já estiver bloqueado, esta opção resultará em
um erro.

rebanho
Tenta definir um bloqueio de aviso compartilhado de bloqueio para o arquivo usando o flock (fd,
LOCK_SH) chamada do sistema. Socat interrompe esta chamada se o arquivo estiver bloqueado por outro
processo.

rebanho
Tenta definir um bloqueio de aconselhamento compartilhado não bloqueador para o arquivo usando o flock (fd,
LOCK_SH | LOCK_NB) chamada do sistema. Se o arquivo já estiver bloqueado, esta opção resultará em
um erro.

trancar Define um bloqueio de bloqueio no arquivo. Usa o mecanismo setlk ou flock dependendo do
disponibilidade na plataforma específica. Se ambos estiverem disponíveis, a variante POSIX
(setlkw) é usado.

usuário =
Define o (proprietário) do fluxo. Se o endereço for membro do NAMED
grupo de opções, socat usa a chamada de sistema chown () após abrir o arquivo ou vincular
para o soquete de domínio UNIX (condição de corrida!). Sem entrada no sistema de arquivos, socat conjuntos
o usuário do fluxo usando a chamada de sistema fchown (). Essas chamadas podem exigir
privilégio de root.

usuário atrasado =
Define o proprietário do fd para com a chamada de sistema fchown () após a abertura ou
conectar o canal. Isso é útil apenas em entradas do sistema de arquivos.

grupo =
Define o do riacho. Se o endereço for membro da opção NAMED
grupo, socat usa a chamada de sistema chown () após abrir o arquivo ou vincular-se ao
Soquete de domínio UNIX (condição de corrida!). Sem entrada no sistema de arquivos, socat define o
grupo do fluxo com a chamada de sistema fchown (). Essas chamadas podem exigir um grupo
associação ou privilégio de root.

group-late =
Define o grupo do fd para com a chamada de sistema fchown () após a abertura ou
conectar o canal. Isso é útil apenas em entradas do sistema de arquivos.

modo =
Define o [mode_t] (permissões) do fluxo. Se o endereço for membro de
o grupo de opções NAMED e usa a chamada open () ou creat (), o modo é aplicado
com estas. Se o endereço for membro do grupo de opções NAMED sem usar estes
chamadas de sistema, socat usa a chamada de sistema chmod () após abrir a entrada do sistema de arquivos
ou vinculando-se ao soquete de domínio UNIX (condição de corrida!). De outra forma, socat define o
modo do fluxo usando fchmod (). Essas chamadas podem exigir propriedade ou root
privilégio.

perm-late =
Define as permissões do fd para o valor [mode_t] usando o sistema fchmod ()
após a abertura ou conexão do canal. Isso é útil apenas no sistema de arquivos
entradas.

append =
Sempre grava dados no final real do arquivo. Se o endereço for membro do OPEN
grupo de opções, socat usa o sinalizador O_APPEND com a chamada de sistema open () (exemplo).
Caso contrário, socat aplica a chamada fcntl (fd, F_SETFL, O_APPEND).

não bloqueado =
Tenta abrir ou usar o arquivo no modo sem bloqueio. Seus únicos efeitos são que o
a chamada connect () de endereços TCP não bloqueia, e que a abertura de um pipe nomeado para
a leitura não bloqueia. Se o endereço for membro do grupo de opções OPEN, socat
usa o sinalizador O_NONBLOCK com a chamada de sistema open (). De outra forma, socat aplica o
chamada fcntl (fd, F_SETFL, O_NONBLOCK).

binário Abre o arquivo em modo binário para evitar conversões implícitas de terminador de linha
(Cywin).

texto Abre o arquivo em modo de texto para forçar as conversões implícitas do terminador de linha (Cygwin).

não herdar
Não mantém este arquivo aberto em um processo gerado (Cygwin).

legal-escrever
Facilita quando a gravação falha com EPIPE ou ECONNRESET e registra a mensagem com
aviso prévio nível em vez de erro. Isso evita que o arquivo de log seja preenchido com
mensagens de erro inúteis quando socat é usado como um servidor de alto volume ou proxy onde
os clientes freqüentemente abortam a conexão.
Esta opção é experimental.

fim-fim
Muda o método (dependente do endereço) de encerrar uma conexão para apenas fechar o
descritores de arquivo. Isso é útil quando a conexão deve ser reutilizada ou compartilhada
com outros processos (exemplo).
Normalmente, as conexões de soquete serão encerradas com encerramento(2) que encerra o
socket, mesmo se for compartilhado por vários processos. fechar(2) "desvincula" o soquete
do processo, mas o mantém ativo enquanto ainda houver links de outros
processos.
Da mesma forma, quando um endereço do tipo EXEC ou SYSTEM é encerrado, socat geralmente irá
elimine explicitamente o subprocesso. Com esta opção, ele irá apenas fechar o arquivo
descritores.

calar-se
Altera o método (dependente do endereço) de desligar a parte de gravação de um
conexão para não fazer nada.

shut-down
Altera o método (dependente do endereço) de desligar a parte de gravação de um
conexão para desligar \ (fd, SHUT_WR). Só é útil com soquetes.

fechar-fechar
Altera o método (dependente do endereço) de desligar a parte de gravação de um
conexão para fechar \ (fd).

fechar-nulo
Quando um endereço indica EOF, socat irá enviar um pacote de tamanho zero para a escrita
canal do outro endereço para transferir a condição EOF. Isso é útil com UDP
e outros protocolos de datagrama. Foi testado contra netcat e socat com opção
nulo-eof.

nulo-eof
Normalmente socat irá ignorar pacotes vazios (carga útil de tamanho zero) que chegam no datagrama
soquetes, para que sobreviva a varreduras de portas. Com esta opção socat interpreta vazio
pacotes de datagramas como indicador EOF (consulte shut-null).

ioctl-void =
Chama ioctl () com o valor da solicitação como segundo argumento e NULL como terceiro argumento.
Esta opção permite utilizar ioctls que não são explicitamente implementados no socat.

ioctl-int = :
Chama ioctl () com o valor da solicitação como segundo argumento e o valor inteiro como
terceiro argumento.

ioctl-intp = :
Chama ioctl () com o valor da solicitação como segundo argumento e um ponteiro para o
valor inteiro como terceiro argumento.

ioctl-bin = :
Chama ioctl () com o valor da solicitação como segundo argumento e um ponteiro para o dado
valor dos dados como terceiro argumento. Esses dados devem ser especificados em Formato.

string ioctl = :
Chama ioctl () com o valor da solicitação como segundo argumento e um ponteiro para o dado
string como terceiro argumento. Formato.

NOMEADO opção grupo

Essas opções funcionam nas entradas do sistema de arquivos.
Consulte também as opções usuário, grupo e modo.

usuário antecipado =
Muda o (proprietário) da entrada do sistema de arquivos antes de acessá-lo, usando o
chamada de sistema chown (). Esta chamada pode exigir privilégio de root.

group-early =
Muda o da entrada do sistema de arquivos antes de acessá-lo, usando o chown ()
chamada de sistema. Esta chamada pode exigir associação ao grupo ou privilégio de root.

perm-precoce =
Muda o [mode_t] da entrada do sistema de arquivos antes de acessá-lo, usando o
chamada de sistema chmod (). Esta chamada pode exigir propriedade ou privilégio de root.

umask =
Define o umask do processo para [mode_t] antes de acessar o sistema de arquivos
entrada (útil com soquetes de domínio UNIX!). Esta chamada pode afetar ainda mais
operações do socat processar!

desligar cedo
Desvincula (remove) o arquivo antes de abri-lo e mesmo antes de aplicá-lo antecipadamente
etc.

desvincular Desvincula (remove) o arquivo antes de acessá-lo, mas após o início do usuário, etc.

desligar tarde
Desvincula (remove) o arquivo após abri-lo para torná-lo inacessível para outros
processos após uma condição de corrida curta.

desligar-fechar
Remove a entrada do sistema de arquivos de endereços ao fechar o endereço. Para tubos nomeados,
ouvindo soquetes de domínio unix, e os links simbólicos de endereços pty, o padrão
é 1; para arquivos criados, arquivos abertos, arquivos abertos genéricos e domínio unix do cliente
soquetes, o padrão é 0.

ABERTO opção grupo

As opções do grupo OPEN permitem definir sinalizadores com a chamada de sistema open (). Por exemplo, opção
`creat 'define o sinalizador O_CREAT.
Veja também as opções append e nonblock.

creat =
Cria o arquivo se ele não existir (exemplo).

dsync =
Bloqueia as chamadas write () até que o metainfo seja fisicamente gravado na mídia.

excl =
Com a opção creat, se o arquivo existir, isso é um erro.

largefile =
Em sistemas de 32 bits, permite um arquivo maior que 2 ^ 31 bytes.

noatime
Define as opções O_NOATIME, então as leituras não alteram o registro de data e hora de acesso.

noctty =
Não torna este arquivo o terminal de controle.

nofollow =
Não segue links simbólicos.

nshare =
Não permite compartilhar este arquivo com outros processos.

rshare =
Não permite que outros processos abram este arquivo para gravação.

rsync =
Bloqueia write () até que o metainfo seja fisicamente gravado na mídia.

sync =
Bloqueia write () até que os dados sejam fisicamente gravados na mídia.

rdonly =
Abre o arquivo apenas para leitura.

errado =
Abre o arquivo apenas para gravação.

tronco Trunca o arquivo para o tamanho 0 ao abri-lo.

REG e BLK opção grupo

Essas opções são geralmente aplicadas a um descritor de arquivo UN * X, mas sua semântica torna
sentido apenas em um arquivo que suporte acesso aleatório.

procurar =
Aplica o lseek (fd, , SEEK_SET) (ou lseek64) chamada de sistema, portanto
posicionar o ponteiro do arquivo absolutamente para [off_t ou off64_t]. Observe
que um valor ausente é padronizado para 1, não 0.

see-cur =
Aplica o lseek (fd, , SEEK_CUR) (ou lseek64) chamada de sistema, portanto
posicionando o ponteiro do arquivo bytes [off_t ou off64_t] relativamente ao seu
posição atual (que geralmente é 0). Observe que um valor ausente é padronizado para
1, não 0.

procurar fim =
Aplica o lseek (fd, , SEEK_END) (ou lseek64) chamada de sistema, portanto
posicionando o ponteiro do arquivo [off_t ou off64_t] bytes em relação ao
fim atual dos arquivos. Observe que um valor ausente é padronizado para 1, não 0.

ftruncate =
Aplica o ftruncate (fd, ) (ou ftruncate64 se disponível) chamada de sistema, portanto
truncando o arquivo na posição [off_t ou off64_t]. Observe que um
o valor ausente é padronizado para 1, não 0.

secrm =

unrm =

compr =

ext2-sync =

imutável =

ext2-append =

nodump =

ext2-noatime =

journal-data =

notail =

dirsync =
Estas opções alteram atributos de arquivo não padrão em sistemas operacionais e arquivos
sistemas que suportam esses recursos, como Linux com ext2fs, ext3fs ou reiserfs.
Veja man 1 chattr para obter informações sobre essas opções. Observe que pode haver
uma condição de corrida entre criar o arquivo e aplicar essas opções.

PROCEDIMENTO: opção grupo

As opções deste grupo mudam as propriedades do processo em vez de afetar apenas um dado
canal. Para endereços EXEC e SYSTEM e para endereços de tipo LISTEN e CONNECT com
opção FORK, essas opções se aplicam aos processos filho em vez do processo socat principal.

chroot =
Executa uma operação chroot () para depois de processar o endereço
(exemplo). Esta chamada pode exigir privilégio de root.

chroot-early =
Executa uma operação chroot () para antes de abrir o endereço. Esta chamada
pode exigir privilégio de root.

setgid =
Muda o primário do processo após o processamento do endereço. Esta chamada
pode exigir privilégio de root. Por favor, note que esta opção não descarta outros
privilégios relacionados ao grupo.

setgid-early =
Como setgit, mas é executado antes de abrir o endereço.

setuid =
Muda o (proprietário) do processo após o processamento do endereço. Esta chamada
pode exigir privilégio de root. Observe que esta opção não descarta o grupo
privilégios relacionados. Verifique se a opção su atende melhor às suas necessidades.

setuid-early =
Como setuid, mas é executado antes de abrir o endereço.

su =
Muda o (proprietário) e grupos do processo após o processamento do endereço
(exemplo). Esta chamada pode exigir privilégio de root.

su-d =
Nome abreviado de subusuário atrasado. Muda o (proprietário) e grupos do
processo após o processamento do endereço (exemplo). O usuário e seus grupos são
recuperado antes um possível chroot (). Esta chamada pode exigir privilégio de root.

setpgid =
Torna o processo um membro do grupo de processos especificado . Se nenhum valor for
dado, ou se o valor for 0 ou 1, o processo se torna o líder de um novo processo
grupo.

setid Torna o processo o líder de uma nova sessão (exemplo).

LEIA A LINHA opção grupo

Devido a restrições de licença, o recurso readline está desabilitado no Debian (veja BUGS).
Essas opções se aplicam ao tipo de endereço readline.

história =
Lê e grava a história de / para (exemplo).

sem prompt
Desde a versão 1.4.0, socat por padrão tenta determinar um prompt - ou seja,
passado para a chamada readline - lembrando a última linha incompleta do
saída. Com esta opção, socat não passa um prompt para readline, então ele começa
edição de linha na primeira coluna do terminal.

noecho =
Especifica um padrão regular para um prompt que impede a seguinte linha de entrada
de serem exibidos na tela e de serem adicionados ao histórico. O prompt
é definido como o texto que foi enviado para o endereço readline após o último
caractere de nova linha e antes de um caractere de entrada ser digitado. O padrão é regular
expressão, por exemplo, "^ [Pp] assword:. * $" ou "([Uu] ser: | [Pp] assword :)". Veja regex \ (7)
para detalhes. (exemplo)

prompt =
Passa a string como prompt para a função readline. readline imprime este prompt
ao percorrer a história. Se esta string corresponder a um prompt constante emitido
por um programa interativo no outro endereço socat, aparência consistente pode
ser arquivado.

APLICAÇÃO opção grupo

Este grupo contém opções que funcionam no nível dos dados. Observe que essas opções se aplicam apenas
aos dados "brutos" transferidos pela socat, mas não aos dados do protocolo usados ​​por endereços como
PROCURAÇÃO.

cr Converte o caractere de terminação de linha padrão NL ('\ n', 0x0a) para / de CR ('\ r',
0x0d) ao escrever / ler neste canal.

crnl Converte o caractere de terminação de linha padrão NL ('\ n', 0x0a) para / de CRNL
("\ r \ n", 0x0d0a) ao escrever / ler neste canal (exemplo). Nota: socat
simplesmente remove todos os caracteres CR.

ignorar
Quando EOF ocorre neste canal, socat ignora e tenta ler mais dados (como
"tail -f") (exemplo).

readbytes =
socat lê apenas alguns bytes deste endereço (o endereço fornece apenas alguns
bytes para transferência e finge estar em EOF depois). Deve ser maior que 0.

lockfile =
Se o arquivo de bloqueio existir, sai com erro. Se lockfile não existir, o cria e
continua, desvincula o arquivo de bloqueio na saída.

waitlock =
Se lockfile existe, espera até que desapareça. Quando o arquivo de bloqueio não existe,
o cria e continua, desassocia o arquivo de bloqueio ao sair.

escape =
Especifica o código numérico de um caractere que dispara EOF no fluxo de entrada. Isto
é útil com um terminal em modo bruto (exemplo).

SOQUETE opção grupo

Essas opções são destinadas a todos os tipos de soquetes, por exemplo, IP ou domínio UNIX. A maioria é
aplicado com uma chamada setsockopt ().

vincular =
Vincula o soquete ao endereço de soquete fornecido usando a chamada de sistema bind (). A forma
do é dependente do domínio do soquete: IP4 e IP6 permitem o formulário
[hostname | hostaddress] [:( serviço | porta)] (exemplo), os soquetes de domínio UNIX exigem
.

tempo limite de conexão =
Abortar a tentativa de conexão após [timeval] com status de erro.

so-bindtodevice =
Vincula o soquete ao dado . Esta opção pode exigir root
privilégio.

transmissão
Para sockets de datagrama, permite enviar para endereços de broadcast e receber pacotes
endereçado a endereços de broadcast.

depurar Ativa a depuração de soquete.

Dontroute
Comunica-se apenas com pares conectados diretamente, não usa roteadores.

mantenha vivo
Ativa o envio de manutenções de atividade no soquete.

linger =
Bloqueia o desligamento () ou o fechamento () até que as transferências de dados tenham terminado ou o dado
tempo limite [int] expirou.

oobinline
Coloca dados fora de banda no fluxo de dados de entrada.

prioridade =
Define o protocolo definido [ ] para pacotes de saída.

rcvbuf =
Define o tamanho do buffer de recepção após a chamada de socket () para [int]. Com
Soquetes TCP, este valor corresponde ao tamanho máximo da janela do soquete.

rcvbuf-late =
Define o tamanho do buffer de recepção quando o soquete já está conectado a
[int]. Com soquetes TCP, este valor corresponde à janela máxima do soquete
tamanho.

rcvlowat =
Especifica o número mínimo de bytes recebidos [int] até que a camada de soquete
passar os dados armazenados em buffer para socat.

rcvtimeo =
Define o tempo limite de recebimento [timeval].

reúso
Permite que outros sockets se liguem a um endereço, mesmo que partes dele (por exemplo, o local
porta) já estão em uso por socat (exemplo).

sndbuf =
Define o tamanho do buffer de envio após a chamada de socket () para [int].

sndbuf-late =
Define o tamanho do buffer de envio quando o soquete está conectado a [int].

sndlowat =
Especifica o número mínimo de bytes no buffer de envio até a camada de soquete
irá enviar os dados para [int].

sndtimeo =
Define o tempo limite de envio em segundos [timeval].

pf =
Força o uso da versão ou protocolo IP especificado. pode ser algo
como "ip4" ou "ip6". O valor resultante é usado como primeiro argumento para o socket ()
ou chamadas socketpair (). Esta opção afeta a resolução do endereço e o necessário
sintaxe de opções de ligação e intervalo.

tipo =
Define o tipo de socket, especificado como segundo argumento para o socket () ou
chamadas socketpair (), para [int]. A resolução do endereço não é afetada por isso
opção. No Linux, 1 significa soquete orientado a fluxo, 2 significa soquete de datagrama e
3 significa soquete bruto.

protótipo
Define o protocolo do socket, especificado como terceiro argumento para o socket () ou
chamadas socketpair (), para [int]. A resolução do endereço não é afetada por
esta opção. 6 significa TCP, 17 significa UDP.

assim-carimbo de data / hora
Define a opção de soquete SO_TIMESTAMP. Isso permite o recebimento e registro de
mensagens auxiliares de carimbo de data / hora.

setsockopt-int = : :
Invoca setsockopt () para o socket com os parâmetros dados. nível [int] é usado
como segundo argumento para setsockopt () e especifica a camada, por exemplo, SOL_TCP para TCP (6
no Linux), ou SOL_SOCKET para a camada de soquete (1 no Linux). optname [int] é o
terceiro argumento para setsockopt () e diz qual opção de socket deve ser definida. Para o
números reais, você pode ter que procurar os arquivos de inclusão apropriados de seu
sistema. O quarto parâmetro setsockopt (), valor [int], é passado para a função por
ponteiro, e para o parâmetro de comprimento sizeof \ (int) é considerado implicitamente.

setsockopt-bin = : :
Como setsockopt-int, mas deve ser fornecido no formato dalan e especifica um
seqüência arbitrária de bytes; o parâmetro de comprimento é automaticamente derivado do
dados.

setsockopt-string = : :
Como setsockopt-int, mas deve ser uma string. Esta string é passada para o
função com caractere nulo final, e o parâmetro de comprimento é automaticamente
derivados dos dados.

UNIX opção grupo

Essas opções se aplicam a endereços baseados em domínio UNIX.

unix-tightsocklen = [0 | 1]
Em operações de soquete, passe um comprimento de endereço de soquete que não inclua todo o
registro de struct sockaddr_un, mas (além de outros componentes) apenas a parte relevante de
o nome do arquivo ou string abstrata. O padrão é 1.

IP4 e IP6 opção grupos

Essas opções podem ser usadas com soquetes baseados em IPv4 e IPv6.

tos =
Define o campo TOS (tipo de serviço) dos pacotes de saída para [byte] (ver RFC


ttl =
Define o campo TTL (tempo de vida) dos pacotes de saída para [byte].

ip-options =
Define opções de IP como roteamento de origem. Deve ser fornecido na forma binária, recomendado
formato é um "x" inicial seguido por um número par de dígitos hexadecimais. Esta opção pode
ser usado várias vezes, os dados são anexados. Por exemplo, para se conectar ao host 10.0.0.1 via
algum gateway usando uma rota de origem livre, use o gateway como parâmetro de endereço e
defina uma rota de origem livre usando a opção ip-options = x8307040a000001.
As opções de IP são definidas no RFC 791.

mtudiscover = <0 | 1 | 2>
É preciso 0, 1, 2 para nunca, querer ou sempre usar a descoberta de MTU do caminho neste soquete.

ip-pktinfo
Define a opção de soquete IP_PKTINFO. Isso permite o recebimento e registro de auxiliares
mensagens contendo endereço de destino e interface (Linux) (exemplo).

ip-reverr
Define a opção de soquete IP_RECVERR. Isso permite o recebimento e registro de auxiliares
mensagens contendo informações detalhadas do erro.

recebimentos de ip
Define a opção de soquete IP_RECVOPTS. Isso permite o recebimento e registro de IP
opções de mensagens auxiliares (Linux, * BSD).

recvtos ip
Define a opção de soquete IP_RECVTOS. Isso permite o recebimento e registro de TOS (tipo
de serviço) mensagens auxiliares (Linux).

ip-recvtl
Define a opção de soquete IP_RECVTTL. Isso permite o recebimento e registro de TTL (tempo
para viver) mensagens auxiliares (Linux, * BSD).

ip-recvdstaddr
Define a opção de soquete IP_RECVDSTADDR. Isso permite o recebimento e registro de
mensagens auxiliares contendo endereço de destino (* BSD) (exemplo).

ip-recvif
Define a opção de soquete IP_RECVIF. Isso permite o recebimento e registro da interface
mensagens auxiliares (* BSD) (exemplo).

ip-add-membership =

ip-add-membership =

ip-add-membership =

ip-add-membership =

ip-add-membership =
Torna o soquete membro do grupo multicast especificado. Atualmente é apenas
implementado para IPv4. A opção leva o endereço IP do grupo multicast e
informações sobre a interface de rede desejada. A sintaxe mais comum é a primeira,
enquanto os outros estão disponíveis apenas em sistemas que fornecem struct mreqn (Linux).
Os índices de interfaces de rede ativas podem ser mostrados usando o utilitário procano.

ip-multicast-if =
Especifica o nome do host ou endereço da interface de rede a ser usada para multicast
tráfego.

ip-multicast-loop =
Especifica se o tráfego multicast de saída deve retornar à interface.

ip-multicast-ttl =
Define o TTL usado para o tráfego multicast de saída. O padrão é 1.

res-depurar

Res-a-somente

res-usevc

res-primário

re-igntc

re-recurso

res-defnames

res-fique aberto

res-dnsrch
Essas opções definem os sinalizadores de opção do resolvedor (resolução de nome) correspondentes.
Anexe "= 0" para limpar uma opção padrão. Veja man resolver \ (5) para mais informações sobre
essas opções. Observação: essas opções são válidas apenas para o endereço em que são aplicadas
para.

IP6 opção grupo

Essas opções só podem ser usadas em soquetes baseados em IPv6. Veja as opções de IP para opções que podem
ser aplicado aos soquetes IPv4 e IPv6.

ipv6only =
Define a opção de soquete IPV6_V6ONLY. Se 0, a pilha TCP também aceitará
conexões usando o protocolo IPv4 na mesma porta. O padrão depende do sistema.

ipv6-recvdstopts
Define a opção de soquete IPV6_RECVDSTOPTS. Isso permite o recebimento e registro de
mensagens auxiliares contendo as opções de destino.

ipv6-recvhoplimit
Define a opção de soquete IPV6_RECVHOPLIMIT. Isso permite o recebimento e registro de
mensagens auxiliares contendo o hoplimit.

IPv6-recvhopopts
Define a opção de soquete IPV6_RECVHOPOPTS. Isso permite o recebimento e registro de
mensagens auxiliares contendo as opções de salto.

ipv6-recvpktinfo
Define a opção de soquete IPV6_RECVPKTINFO. Isso permite o recebimento e registro de
mensagens auxiliares contendo endereço de destino e interface.

ipv6-unicast-hops = link (TYPE_INT) ( )
Define a opção de socket IPV6_UNICAST_HOPS. Isso define o limite de contagem de saltos (TTL) para
pacotes unicast de saída.

ipv6-recvrthdr
Define a opção de soquete IPV6_RECVRTHDR. Isso permite o recebimento e registro de
mensagens auxiliares contendo informações de roteamento.

classe ipv6-t
Define a opção de soquete IPV6_TCLASS. Isso define a classe de transferência de saída
pacotes.

classe ipv6-recvt
Define a opção de soquete IPV6_RECVTCLASS. Isso permite o recebimento e registro de
mensagens auxiliares contendo a classe de transferência.

TCP opção grupo

Essas opções podem ser aplicadas a soquetes TCP. Eles funcionam invocando setsockopt () com o
parâmetros apropriados.

cortiça Não envia pacotes menores que MSS (tamanho máximo do segmento).

adiar aceitar
Enquanto escuta, aceita conexões apenas quando os dados do par chegam.

keepcnt =
Define o número de manutenções de atividade antes de desligar o soquete para [int].

keepidle =
Define o tempo ocioso antes de enviar o primeiro keepalive para [int].

keepintvl =
Define o intervalo entre duas manutenções de atividade para [int].

linger2 =
Define o tempo para manter o soquete no estado FIN-WAIT-2 para [int].

mss =
Define o MSS (tamanho máximo do segmento) após a chamada de socket () para [int]. Isto
o valor é então proposto ao par com o pacote SYN ou SYN / ACK (exemplo).

mss-late =
Define o MSS do soquete após a conexão ter sido estabelecida com [int].

atraso de nó
Desativa o algoritmo de Nagle para medir o RTT (tempo de ida e volta).

rfc1323
Ativa as opções RFC1323 TCP: escala da janela TCP, medição do tempo de ida e volta (RTTM),
e proteger contra números de sequência agrupados (PAWS) (AIX).

Stdurg Ativa o tratamento de ponteiro urgente (AIX) compatível com RFC1122.

syncnt =
Define o número máximo de retransmissões SYN durante a conexão com [int].

md5sig Habilita a geração de resumos MD5 nos pacotes (FreeBSD).

não opte Desabilita o uso de opções de TCP (FreeBSD, MacOSX).

não empurre define a opção de soquete TCP_NOPUSH (FreeBSD, MacOSX).

desativar saco
Desabilita o uso do recurso de reconhecimento seletivo (OpenBSD).

habilitar assinatura
Habilita a geração de resumos MD5 nos pacotes (OpenBSD).

limite de aborto =
Define o tempo de espera por uma resposta do par em uma conexão estabelecida
(HP-UX).

limite de aborto de conexão =
Define o tempo de espera por uma resposta do servidor durante a conexão inicial
(HP-UX).

Keepinit
Define o tempo de espera por uma resposta do servidor durante a conexão \ () antes de dar
acima. Valor em meio segundo, o padrão é 150 (75s) (Tru64).

patas Ativa o recurso de "proteção contra números de seqüência agrupados" (Tru64).

Sackena
Ativa o reconhecimento seletivo (Tru64).

Tsoptena
Ativa a opção de carimbo de data / hora que permite o recálculo RTT em conexões existentes
(Tru64).

SCTP opção grupo

Essas opções podem ser aplicadas aos soquetes de fluxo SCTP.

sctp-nodelay
Define a opção de soquete SCTP_NODELAY que desabilita o algoritmo Nagle.

sctp-maxseg =
Define a opção de soquete SCTP_MAXSEG para [int]. Este valor é então proposto
para o par com o pacote SYN ou SYN / ACK.

UDP, TCP, e SCTP opção grupos

Aqui encontramos opções que estão relacionadas ao mecanismo de porta de rede e, portanto, podem ser usadas
com endereços de cliente e servidor UDP, TCP e SCTP.

sourceport =
Para conexões TCP e UDP de saída (cliente), ele define a fonte usando um
chamada extra bind (). Com endereços de escuta TCP ou UDP, socat desliga imediatamente
a conexão se o cliente não usar esta porta de origem (exemplo).

Lowport
As conexões TCP e UDP de saída (cliente) com esta opção usam um parâmetro aleatório não utilizado
porta de origem entre 640 e 1023 incl. Em sistemas operacionais de classe UNIX, este
requer privilégio de root e, portanto, indica que o processo do cliente está autorizado
pela raiz local. Endereços de escuta TCP e UDP com esta opção desligam imediatamente
a conexão se o cliente não usar uma porta de origem <= 1023. Este mecanismo pode
fornecer autorização limitada em algumas circunstâncias.

MEIAS opção grupo

Ao usar endereços do tipo SOCKS, algumas opções específicas de meias podem ser definidas.

socksport = serviço>
Substitui o serviço padrão "socks" ou porta 1080 para a porta do servidor socks com
.

socksuser =
Envia o [string] no campo de nome de usuário para o servidor socks. O padrão é o
nome de usuário real ($ LOGNAME ou $ USER) (exemplo).

HTTP opção grupo

Opções que podem ser fornecidas com endereços do tipo HTTP. O único endereço HTTP atualmente
implementado é conexão por proxy.

proxyport = serviço>
Substitui a porta 8080 do proxy HTTP padrão com .

ignorante
O protocolo HTTP requer o uso de CR + NL como terminador de linha. Quando um servidor proxy
viola esse padrão, socat pode não entender sua resposta. Esta opção direciona
socat para interpretar NL como terminador de linha e ignorar CR na resposta.
No entanto, a socat envia CR + NL para o proxy.

proxyauth = :
Fornece autenticação "básica" ao servidor proxy. O argumento para a opção é
usado com um cabeçalho "Proxy-Authorization: Base" no formato codificado em base64.
Nota: nome de usuário e senha são visíveis para todos os usuários na máquina local no
lista de processos; nome de usuário e senha são transferidos para o servidor proxy sem criptografia
(codificado em base64) e pode ser detectado.

resolver
Por padrão, socat envia ao proxy uma solicitação CONNECT contendo o destino
nome de anfitrião. Com esta opção, socat resolve o nome do host localmente e envia o IP
Morada. Observe que, de acordo com RFC 2396, apenas resolução de nomes para IPv4
endereços é implementado.

GAMA opção grupo

Essas opções verificam se um cliente conectado deve receber acesso. Eles podem ser aplicados
para ouvir e receber soquetes de rede. As opções tcp-wrappers se enquadram neste grupo.

intervalo =
Depois de aceitar uma conexão, testa se o par está dentro alcance. Para IPv4
endereços, o intervalo de endereços assume o formato endereço / bits, por exemplo, 10.0.0.0/8, ou
endereço: máscara, por exemplo, 10.0.0.0:255.0.0.0 (exemplo); para IPv6, é
[endereço ip6 / bits], por exemplo, [:: 1/128]. Se o endereço do cliente não corresponder, socat
emite um aviso e continua ouvindo / recebendo.

tcpwrap [= ]
Usa a biblioteca libwrap (tcpd) de Wietse Venema para determinar se o cliente é permitido
conectar. Os arquivos de configuração são /etc/hosts.allow e /etc/hosts.deny para
padrão, consulte "man 5 hosts_access" para obter mais informações. O opcional (modelo
string) é passado para as funções do wrapper como nome do processo daemon (exemplo). Se
omitido, o nome de base da invocação do socats (argv [0]) é passado. Se ambos tcpwrap
e as opções de intervalo são aplicadas a um endereço, ambas as condições devem ser atendidas para
permitir a conexão.

allow-table =
Obtém o arquivo especificado em vez de /etc/hosts.allow.

negar mesa =
Obtém o arquivo especificado em vez de /etc/hosts.deny.

tcpwrap-etc =
Procura hosts.allow e hosts.deny no diretório especificado. É substituído por
opções hosts-allow e hosts-deny.

OUÇA opção grupo

Opções específicas para soquetes de escuta.

backlog =
Define o valor do backlog passado com a chamada do sistema listen () para [int].
O padrão é 5.

max-children =
Limita o número de processos filho simultâneos [int]. O padrão é sem limite.

CRIANÇA opção grupo

Opções para endereços com múltiplas conexões por meio de processos filhos.

garfo Depois de estabelecer uma conexão, lida com seu canal em um processo filho e mantém
o processo pai tentando produzir mais conexões, seja ouvindo ou
conectando em um loop (exemplo).
OPENSSL-CONNECT e OPENSSL-LISTEN diferem em quando eles realmente bifurcam a criança:

Garfos OPENSSL-LISTEN antes o handshake SSL, enquanto OPENSSLSSL-CONNECT bifurca
depois. As opções RETRY e FOREVER não são herdadas pelo processo filho.
Em alguns sistemas operacionais (por exemplo, FreeBSD) esta opção não funciona para UDP-LISTEN
Endereços.

EXEC opção grupo

Opções para endereços que invocam um programa.

caminho =
Substitui a variável de ambiente PATH para pesquisar o programa com .
Este valor $ PATH também é eficaz no processo filho.

entrar Prefixo argv [0] para a chamada execvp () com '-', fazendo com que um shell se comporte como
shell de login.

FORK opção grupo

Os endereços EXEC ou SYSTEM invocam um programa usando um processo filho e transferem dados entre
socat e o programa. O mecanismo de comunicação entre processos pode ser influenciado com o
seguintes opções. Por padrão, um socketpair () é criado e atribuído a stdin e stdout
do processo filho, enquanto stderr é herdado do socat processo, e a criança
o processo usa os descritores de arquivo 0 e 1 para se comunicar com o processo socat principal.

sem garfo Não bifurca um subprocesso para executar o programa, em vez disso, chama execvp \ () ou
system \ () diretamente da instância real do socat. Isso evita a sobrecarga de
outro processo entre o programa e seu par, mas apresenta muitos
restrições:

o esta opção só pode ser aplicada ao segundo socat endereço.

o não pode ser aplicado a uma parte de um endereço duplo.

o o primeiro endereço socat não pode ser OPENSSL ou READLINE

o opções socat -b, -t, -D, -l, -v, -x tornam-se inúteis

o para ambos os endereços, as opções ignoreeof, cr e crnl tornam-se inúteis

o para o segundo endereço (aquele com a opção nofork), opções anexar, cloexec,
rebanho, usuário, grupo, modo, não bloco, perm-late, setlk e setpgid não podem ser
aplicado. Porém, alguns deles podem ser usados ​​no primeiro endereço.

tubos Cria um par de canais não nomeados para comunicação entre processos em vez de um soquete
par.

aberto
Estabelece comunicação com o subprocesso usando um pseudoterminal criado com
openpty () em vez do padrão (socketpair ou ptmx).

ptmx Estabelece comunicação com o subprocesso usando um pseudoterminal criado por
abertura / dev / ptmx or / dev / ptc em vez do padrão (socketpair).

pty Estabelece comunicação com o subprocesso usando um pseudoterminal em vez de um
par de soquetes. Cria o pty com um mecanismo disponível. Se openpty e ptmx forem
ambos disponíveis, ele usa ptmx porque é compatível com POSIX (exemplo).

ctty Torna o tty o tty de controle do subprocesso (exemplo).

stderr Direciona o stderr do subprocesso para seu canal de saída, tornando stderr um dup () de
stdout (exemplo).

fdin =
Atribui o canal de entrada de subprocessos ao seu descritor de arquivo em vez de
stdin (0). O programa iniciado a partir do subprocesso deve usar este fd para leitura
dados de socat (exemplo).

fdout =
Atribui o canal de saída dos subprocessos ao seu descritor de arquivo em vez de
stdout (1). O programa iniciado a partir do subprocesso deve usar este fd para escrever
dados para socat (exemplo).

suspiro, sinal, sair
Tem socat passar sinais desse tipo para o subprocesso. Se nenhum endereço tiver isso
opção, socat termina nesses sinais.

TERMOS opção grupo

Para endereços que funcionam em um tty (por exemplo, stdio, arquivo: / dev / tty, exec: ..., pty), o terminal
parâmetros definidos no mecanismo termios UN * X são disponibilizados como opção de endereço
parâmetros. Observe que as alterações dos parâmetros do seu terminal interativo
permanecer eficaz após socatrescisão, então você pode ter que digitar "reset" ou "stty
sane "em seu shell posteriormente. Para endereços EXEC e SYSTEM com a opção PTY, estes
opções se aplicam ao pty pelos processos filhos.

b0 Desconecta o terminal.

b19200 Define a velocidade da linha serial para 19200 baud. Algumas outras taxas são possíveis; usar
algo como socat -hh | grep 'b [1-9]' para encontrar todas as velocidades suportadas por seu
implementação.
Nota: Em alguns sistemas operacionais, essas opções podem não estar disponíveis. Use ispeed ou
ospeed em vez disso.

echo =
Habilita ou desabilita o eco local.

icanon =
Define ou limpa o modo canônico, habilitando o buffer de linha e alguns caracteres especiais.

cru Define o modo bruto, passando assim a entrada e a saída quase não processadas. Esta opção é
obsoleto, use a opção rawer ou cfmakeraw.

mais cru Torna o terminal mais cru do que a opção bruta. Esta opção desativa implicitamente o eco.
(exemplo).

cfmakeraw
Define o modo bruto invocando cfmakeraw () ou simulando esta chamada. Esta opção
desativa implicitamente o eco.

ignbrk =
Ignora ou interpreta o caractere BREAK (por exemplo, ^ C)

brkint =

bs0

bs1

bsdly = <0 | 1>

clocal =

cr0
cr1
cr2
cr3

Define o atraso do retorno do carro em 0, 1, 2 ou 3, respectivamente. 0 significa sem atraso,
os outros valores são dependentes do terminal.

crdly = <0 | 1 | 2 | 3>

cread =

crtscts =

cs5
cs6
cs7
cs8

Define o tamanho dos caracteres em 5, 6, 7 ou 8 bits, respectivamente.

csize = <0 | 1 | 2 | 3>

cstopb =
Define dois bits de parada, em vez de um.

dsusp =
Define o valor para o caractere VDSUSP que suspende o primeiro plano atual
processa e reativa o shell (todos exceto Linux).

echoctl =
Echos controlam caracteres na notação de chapéu (por exemplo, ^ A)

echoe =

echok =

echoke =

echonl =

echoprt =

eof =

eol =

eol2 =

apagar =

descartar =

ff0

ff1

ffdly =

flusho =

hupcl =

icrnl =

iexten =

igncr =

ignpar =

imaxbel =

inlcr =

inpck =

intr =

isig =

ispeed =
Defina a taxa de transmissão para dados de entrada nesta linha.
Veja também: ospeed, b19200

istrip =

iuclc =

ixany =

ixoff =

ixon =

matar =

Próxima =

min =

nl0 Define o atraso de nova linha em 0.

nl1

nldly =

noflsh =

ocrnl =

ofdel =

ofill =

olcuc =

onlcr =

onlret =

onocr =

opost =
Habilita ou desabilita o processamento de saída; por exemplo, converte NL em CR-NL.

ospeed =
Defina a taxa de transmissão para dados de saída nesta linha.
Veja também: ispeed, b19200

parenb =
Habilite a geração de paridade na saída e a verificação de paridade para a entrada.

parmrk =

parodd =

pendin =

sair =

reimpressão =

Traz o terminal para algo como um estado padrão útil.

start =

parar =

susp =

swtc =

tab0

tab1

tab2

tab3

tabdly =

tempo =

tostop =

vt0

vt1

vtdly =

werase =

xcase =

xtabs

eu-pop-tudo
Com o UNIX System V STREAMS, remove todos os drivers da pilha.

i-push =
Com UNIX System V STREAMS, empurra o driver (módulo) com o nome dado (string)
na pilha. Por exemplo, para garantir que um dispositivo de caractere no Solaris
suporta termios etc, use as seguintes opções:
i-pop-all, i-push = ptem, i-push = ldterm, i-push = ttcompat

PTY opção grupo

Essas opções devem ser usadas com o tipo de endereço pty.

link =
Gera um link simbólico que aponta para o pseudoterminal (pty) real. Isto
pode ajudar a resolver o problema de que os ptys são gerados com mais ou menos
nomes imprevisíveis, dificultando o acesso direto ao pty gerado pelo socat
automaticamente. Com esta opção, o usuário pode especificar um ponto de "correção" no arquivo
hierarquia que o ajuda a acessar o pty real (exemplo). Começando com socat
versão 1.4.3, o link simbólico é removido quando o endereço é fechado (mas veja
opção unlink-close).

espera-escravo
Bloqueia a fase aberta até que um processo abra o lado escravo do pty. Geralmente,
socat continua após gerar o pty com a abertura do próximo endereço ou com
entrar no loop de transferência. Com a opção de espera-escravo, o socat espera até que algum
o processo abre o lado escravo do pty antes de continuar. Esta opção só funciona
se o sistema operacional fornece a chamada de sistema poll (). E isso depende de um
comportamento não documentado de pty's, portanto, não funciona em todos os sistemas operacionais. Isto
foi testado com sucesso no Linux, FreeBSD, NetBSD e no Tru64 com openpty.

intervalo pty =
Quando a opção de espera escravo é definida, o socat verifica periodicamente a condição HUP
usando poll () para descobrir se o lado escravo do pty foi aberto. A votação padrão
o intervalo é 1s. Use a opção pty-interval [timeval] para alterar este valor.

OPENSSL opção grupo

Essas opções se aplicam aos tipos de endereço openssl e openssl-listen.

cifra =
Seleciona a lista de cifras que podem ser usadas para a conexão. Veja a página de manual
de cifras, seção CIPHER LISTA FORMATO, para obter informações detalhadas sobre sintaxe,
valores e padrão de .
Várias cadeias de criptografia podem ser fornecidas, separadas por ':'. Algumas cadeias de criptografia simples:

3DES Usa um conjunto de criptografia com DES triplo.

MD5 Usa um conjunto de criptografia com MD5.

aNULL Usa um conjunto de criptografia sem autenticação.

NULL Não usa criptografia.

HIGH Usa um conjunto de cifras com criptografia "alta". Observe que o par deve oferecer suporte a
propriedade selecionada, ou a negociação falhará.

método =
Define a versão do protocolo a ser usado. Strings válidas (sem distinção entre maiúsculas e minúsculas) são:

SSL2 Selecione a versão 2 do protocolo SSL.

SSL3 Selecione a versão 3 do protocolo SSL.

SSL23 Selecione o melhor protocolo SSL ou TLS disponível. Este é o padrão quando esta opção
não é fornecido.

TLS1 Selecione a versão 1 do protocolo TLS.

TLS1.1 Selecione a versão 1.1 do protocolo TLS.

TLS1.2 Selecione a versão 1.2 do protocolo TLS.

DTLS1 Selecione a versão 1 do protocolo DTLS.

verificar =
Controla a verificação do certificado do par. O padrão é 1 (verdadeiro). Desativando verificação
pode abrir seu soquete para todos, tornando a criptografia inútil!

cert =
Especifica o arquivo com o certificado e a chave privada para autenticação. O
O certificado deve estar no formato OpenSSL (* .pem). Com o openssl-listen, use este
opção é fortemente recomendada. Exceto com cifra aNULL, erro "sem cifras compartilhadas"
ocorrerá quando nenhum certificado for fornecido.

chave =
Especifica o arquivo com a chave privada. A chave privada pode estar neste arquivo ou em
o arquivo fornecido com a opção cert. A parte que tem que provar que é o
o proprietário de um certificado precisa da chave privada.

dhparams =
Especifica o arquivo com os parâmetros Diffie Hellman. Esses parâmetros também podem ser
no arquivo fornecido com a opção cert, caso em que a opção dhparams não é
necessário.

cafile =
Especifica o arquivo com os certificados de autoridade confiáveis ​​(raiz). O arquivo deve ser
no formato PEM e deve conter um ou mais certificados. A festa que verifica
a autenticação de seu par confia apenas nos certificados que estão neste arquivo.

capath =
Especifica o diretório com os certificados confiáveis ​​(raiz). O diretório deve
contêm certificados no formato PEM e seus hashes (consulte a documentação do OpenSSL)

egd =
Em alguns sistemas, o openssl requer uma fonte explícita de dados aleatórios. Especifique o
nome do soquete onde um daemon de coleta de entropia como egd fornece dados aleatórios, por exemplo
/ dev / egd-pool.

pseudo Em sistemas onde o openssl não consegue encontrar uma fonte de entropia e onde não há entropia
daemon de coleta pode ser utilizado, esta opção ativa um mecanismo para fornecer
pseudo entropia. Isso é arquivado tomando o tempo atual em microssegundos para
alimentando o gerador de números pseudoaleatórios libc com um valor inicial. openssl é
então alimentado com saída de chamadas aleatórias \ ().
NOTA: Este mecanismo não é suficiente para a geração de chaves seguras!

comprimir
Habilite ou desabilite o uso de compressão para uma conexão. Definindo como "nenhum"
desativa a compressão, definindo-o como "auto" permite que o OpenSSL escolha o melhor disponível
algoritmo suportado por ambas as partes. O padrão é não tocar em nenhum
configurações relacionadas à compressão. NOTA: Requer OpenSSL 0.9.8 ou superior e desativação
A compactação com OpenSSL 0.9.8 afeta todas as novas conexões no processo.

commonname =
Especifique o commonname que o certificado de mesmo nível deve corresponder. Com OPENSSL-CONNECT
endereço isso substitui o nome de host ou endereço IP de destino fornecido; com OPENSSL-LISTEN
isto ativa a verificação de certificados de peer commonname. Esta opção tem apenas significado
quando a opção de verificação não está desabilitada e a cifra escolhida fornece um par
certificado.

fips Ativa o modo FIPS se compilado. Para obter informações sobre a implementação de criptografia FIPS
padrão ver http://oss-institute.org/fips-faq.html. Este modo pode exigir que
os certificados envolvidos são gerados com uma versão do openssl habilitada para FIPS.
Definir ou limpar esta opção em um endereço socat afeta todos os endereços OpenSSL
deste processo.

REPET opção grupo

Opções que controlam a repetição de algumas chamadas do sistema, especialmente tentativas de conexão.

repetir =
Número de tentativas antes que a conexão ou tentativa de escuta seja abortada. O padrão é
0, o que significa apenas uma tentativa.

intervalo =
Tempo entre tentativas consecutivas (segundos, [timespec]). O padrão é 1 segundo.

para sempre
Executa um número ilimitado de tentativas de repetição.

TUN opção grupo

Opções que controlam os endereços dos dispositivos da interface Linux TUN / TAP.

tun-device =
Instrui o socat a seguir outro caminho para o dispositivo clone TUN. O padrão é
/ dev / net / tun.

nome-tun =
Dá à interface de rede resultante um nome específico em vez do sistema
gerado (tun0, tun1, etc.)

tun-type = [tun | tap]
Define o tipo de dispositivo TUN; use esta opção para gerar um dispositivo TAP. Veja o
Linux docu para a diferença entre esses tipos. Quando você tenta estabelecer um
túnel entre dois dispositivos TUN, seus tipos devem ser os mesmos.

se-não-pi
Define o sinalizador IFF_NO_PI que controla se o dispositivo inclui pacote adicional
informações no túnel. Quando você tenta estabelecer um túnel entre dois TUN
dispositivos, esses sinalizadores devem ter os mesmos valores.

em caso positivo Define o status da interface de rede TUN PARA CIMA. Fortemente recomendado.

iff-transmissão
Define o sinalizador BROADCAST da interface de rede TUN.

if-debug
Define o sinalizador DEBUG da interface de rede TUN.

if-loopback
Define o sinalizador LOOPBACK da interface de rede TUN.

se-ponto-ponto
Define o sinalizador POINTOPOINT do dispositivo TUN.

iff-não-reboques
Define o sinalizador NOTRAILERS do dispositivo TUN.

iff-executando
Define o sinalizador RUNNING do dispositivo TUN.

se-noarp
Define o sinalizador NOARP do dispositivo TUN.

se-promisc
Define o sinalizador PROMISC do dispositivo TUN.

se-todosmulti
Define o sinalizador ALLMULTI do dispositivo TUN.

mestre
Define o sinalizador MASTER do dispositivo TUN.

iff-escravo
Define o sinalizador SLAVE do dispositivo TUN.

se-multicast
Define o sinalizador MULTICAST do dispositivo TUN.

se-portsel
Define o sinalizador PORTSEL do dispositivo TUN.

iff-automedia
Define o sinalizador AUTOMEDIA do dispositivo TUN.

sse-dinâmico
Define o sinalizador DYNAMIC do dispositivo TUN.

DADOS VALORES


Esta seção explica os diferentes tipos de dados que tratam de parâmetros e opções de endereço
pode levar.

intervalo de endereços
Atualmente, está implementado apenas para IPv4 e IPv6. Veja a opção de endereço `intervalo '

bool "0" ou "1"; se o valor for omitido, "1" será usado.

byte Um número int sem sinal, lido com strtoul (), menor ou igual a UCHAR_MAX.

de linha de comando
Uma string que especifica o nome de um programa e seus argumentos, separados por espaços simples.

dados Uma especificação de dados brutos a seguir ramo sintaxe. Atualmente, o único formulário válido é um
string começando com 'x' seguido por um número par de dígitos hexadecimais, especificando um
seqüência de bytes.

anuário
Uma string com semântica de nome de diretório UN * X usual.

facilidade
O nome de um recurso de syslog em caracteres minúsculos.

fdnum Um tipo int não assinado, lido com strtoul (), especificando um descritor de arquivo UN * X.

nome do arquivo
Uma string com semântica de nome de arquivo UN * X usual.

grupo Se o primeiro caractere for um dígito decimal, o valor é lido com strtoul () como
inteiro sem sinal especificando um id de grupo. Caso contrário, deve ser um grupo existente
nome.

int Um número que segue as regras da função strtol () com base "0", ou seja, decimal
número, número octal com "0" à esquerda ou número hexadecimal com "0x" à esquerda. O
o valor deve caber em um C int.

interface
Uma string especificando o nome do dispositivo de uma interface de rede, conforme mostrado por ifconfig ou
procan, por exemplo, "eth0".

Endereço IP
Um endereço IPv4 em notação de números e pontos, um endereço IPv6 em notação hexadecimal
entre colchetes ou um nome de host que resolve para um endereço IPv4 ou IPv6.
Exemplos: 127.0.0.1, [:: 1], www.dest-unreach.org, dns1

Endereço IPv4
Um endereço IPv4 em notação de números e pontos ou um nome de host que resolve para um IPv4
endereço.
Exemplos: 127.0.0.1, www.dest-unreach.org, dns2

Endereço IPv6
Um endereço iPv6 em notação hexadecimal e dois-pontos entre colchetes ou um
nome do host que resolve para um endereço IPv6.
Examples: [::1], [1234:5678:9abc:def0:1234:5678:9abc:def0], ip6name.domain.org

long Um número lido com strtol (). O valor deve caber em um C longo.

longo longo
Um número lido com strtoll (). O valor deve caber em um C longo.

off_t Um número assinado dependente de implementação, geralmente 32 bits, lido com strtol ou
passeio.

off64_t
Um número assinado dependente de implementação, geralmente 64 bits, lido com strtol ou
passeio.

mode_t Um inteiro sem sinal, lido com strtoul (), especificando bits de modo (permissão).

pid_t Um número, lido com strtol (), especificando um id de processo.

porta A uint16_t (número não assinado de 16 bits) especificando uma porta TCP ou UDP, ler com
strtoul ().

protocolo
Um número de 8 bits sem sinal, lido com strtoul ().

size_t Um número sem sinal com limitações size_t, lido com strtoul.

nome da meia
Um endereço de soquete. Veja a opção de endereço `bind '

string Uma sequência de caracteres, não contendo '\ 0' e, dependendo da posição dentro
a linha de comando, ':', ',' ou "!!". Observe que você pode ter que escapar do meta shell
caracteres na linha de comando.

Serviço TCP
Um nome de serviço, não começando com um dígito, que é resolvido por getservbyname (), ou
um número int de 16 bits sem sinal lido com strtoul ().

tempo
Um flutuador duplo especificando segundos; o número é mapeado em uma estrutura timeval,
consistindo em segundos e microssegundos.

especificação de tempo
Um flutuador duplo especificando segundos; o número é mapeado em uma estrutura de tempo,
consistindo em segundos e nanossegundos.

Serviço UDP
Um nome de serviço, não começando com um dígito, que é resolvido por getservbyname (), ou
um número int de 16 bits sem sinal lido com strtoul ().

int sem sinal
Um número lido com strtoul (). O valor deve caber em um C unsigned int.

usuário Se o primeiro caractere for um dígito decimal, o valor é lido com strtoul () como
inteiro sem sinal especificando um ID de usuário. Caso contrário, deve ser um nome de usuário existente.

EXEMPLOS


socat - TCP4: www.domain.org: 80

transfere dados entre STDIO (-) e uma conexão TCP4 para a porta 80 do host
www.domain.org. Este exemplo resulta em uma conexão interativa semelhante ao telnet
ou netcat. Os parâmetros do terminal stdin não são alterados, então você pode fechar o
retransmitir com ^ D ou abortá-lo com ^ C.

socat -d -d READLINE, history = $ HOME / .http_history \
TCP4: www.domain.org: www, crnl

isso é semelhante ao exemplo anterior, mas você pode editar a linha atual em um
bash like way (READLINE) e usar o arquivo de histórico .http_history; socat impressões
mensagens sobre o progresso (-d -d). A porta é especificada pelo nome do serviço (www) e
caracteres corretos de terminação de linha de rede (crnl) em vez de NL são usados.

socat TCP4-LISTEN: www TCP4: www.domain.org: www

instala um encaminhador de porta TCP simples. Com TCP4-LISTEN ele escuta na porta local
"www" até que uma conexão entre, aceite-a e conecte-se ao host remoto
(TCP4) e inicia a transferência de dados. Não aceitará uma segunda conexão.

socat -d -d -lmlocal2 \
TCP4-LISTEN:80,bind=myaddr1,reuseaddr,fork,su=nobody,range=10.0.0.0/8 \
TCP4: www.domain.org: 80, bind = myaddr2

Encaminhador de porta TCP, cada lado ligado a outro endereço IP local (ligação). Isto
exemplo lida com um número quase arbitrário de conexões paralelas ou consecutivas
bifurcando um novo processo após cada aceitação (). Ele fornece um pouco de segurança por
su'ing para o usuário nobody após bifurcação; ele só permite conexões do privado
10 rede (alcance); devido ao reuseaddr, permite o reinício imediato após o master
encerramento do processo, mesmo que alguns soquetes filhos não sejam completamente desligados.
Com -lmlocal2, socat se loga em stderr até alcançar com sucesso o loop de aceitação.
O registro posterior é direcionado ao syslog com a facilidade local2.

socat TCP4-LISTEN: 5555, fork, tcpwrap = script \
EXEC: / bin / myscript, chroot = / home / sandbox, su-d = sandbox, pty, stderr

um servidor simples que aceita conexões (TCP4-LISTEN) e fork é um novo filho
processo para cada conexão; cada criança atua como um único relé. O cliente deve
coincidir com as regras para o nome do processo daemon "script" em /etc/hosts.allow e
/etc/hosts.deny, caso contrário, o acesso é recusado (ver "man 5 hosts_access"). Por
EXEC'utando o programa, o filho processa o chroot para / home / sandbox, su é para o usuário
sandbox e, em seguida, inicia o programa / home / sandbox / bin / myscript. Socat e myscript
comunicar-se por meio de um pseudo tty (pty); stderr do myscript é redirecionado para stdout, então
suas mensagens de erro são transferidas via socat para o cliente conectado.

socat EXEC: "mail.sh [email protegido]", fdin = 3, fdout = 4 \
TCP4: mail.relay.org: 25, crnl, bind = alias1.server.org, mss = 512

correio.sh é um script de shell, distribuído com socat, que implementa um SMTP simples
cliente. Ele é programado para "falar" o SMTP em seus FDs 3 (entrada) e 4 (saída). O fdin
e opções de fdout dizem socat para usar esses FDs para comunicação com o programa.
Porque mail.sh herda stdin e stdout enquanto socat não os usa, o script
pode ler o corpo de uma mensagem de stdin. Socat torna alias1 seu endereço de origem local
(vincular), cuida da terminação de linha de rede correta (crnl) e envia no máximo 512
bytes de dados por pacote (mss).

socat -, escape = 0x0f / dev / ttyS0, rawer, crnl

abre uma conexão interativa através da linha serial, por exemplo, para falar com um modem.
rawer define os parâmetros do terminal do console e ttyS0 para valores praticáveis,
crnl converte para corrigir caracteres de nova linha. escape permite encerrar o socat
processo com controle de personagem-O.

socat UNIX-LISTEN: /tmp/.X11-unix/X1,fork \
SOCKS4: host.victim.org: 127.0.0.1: 6000, socksuser = ninguém, sourceport = 20

com UNIX-LISTEN, socat abre um soquete de domínio UNIX de escuta /tmp/.X11-unix/X1.
Este caminho corresponde à exibição XWindow local: 1 em sua máquina, então XWindow
conexões de cliente para DISPLAY =: 1 são aceitas. Socat então fala com o SOCKS4
servidor host.victim.org que pode permitir conexões baseadas em sourceport 20 devido a um
Fraqueza relacionada ao FTP em seus filtros de IP estáticos. Socat finge ser invocado por
socksuser ninguém, e pedidos para ser conectado à porta de loopback 6000 (apenas fraca
as configurações do sockd permitirão isso). Então, temos uma conexão com as vítimas
Servidor XWindow e, se não exigir cookies MIT ou autenticação Kerberos,
podemos começar a trabalhar. Observe que só pode haver uma conexão por vez,
porque o TCP pode estabelecer apenas uma sessão com um determinado conjunto de endereços e portas.

socat -u / tmp / readdata, search-end = 0, ignoreeof -

este é um exemplo de transferência de dados unidirecional (-u). Socat transfere dados de
arquivo / tmp / readdata (endereço implícito GOPEN), começando em seu final atual
(fim de busca = 0 deixa socat começar a ler no final do arquivo atual; use a busca = 0 ou nenhuma busca
opção de ler primeiro os dados existentes) em um modo "tail -f" (ignoreeof). O
"arquivo" também pode ser um soquete de domínio UNIX de escuta (não use uma opção de busca
então).

(dorme 5; eco SENHA; dormir 5; eco é; dormir 1) |
socat - EXEC: 'ssh -l usuário server ', pty, setsid, ctty

EXEC executa uma sessão SSH para o servidor. Usa um pty para comunicação entre socat e
ssh, torna o tty de controle do ssh (ctty), e torna este pty o proprietário de um novo
grupo de processos (setsid), então ssh aceita a senha de socat.

socat -u TCP4-LISTEN: 3334, reuseaddr, fork \
ABRIR: /tmp/in.log,creat,append

implementa um coletor de mensagens simples baseado em rede. Para cada cliente conectado a
porta 3334, um novo processo filho é gerado (bifurcação de opção). Todos os dados enviados pelo
os clientes são anexados ao arquivo /tmp/in.log. Se o arquivo não existir, socat
creat é isso. A opção reuseaddr permite o reinício imediato do processo do servidor.

socat PTY, link = $ HOME / dev / vmodem0, rawer, wait-slave \
EXEC: "ssh modemserver.us.org socat - / dev / ttyS0, não bloqueado, bruto "

gera um dispositivo de pseudo terminal (PTY) no cliente que pode ser alcançado em
o link simbólico $ HOME / dev / vmodem0. Um aplicativo que espera uma linha serial ou
o modem pode ser configurado para usar $ HOME / dev / vmodem0; seu tráfego será direcionado para um
modemserver via ssh onde outra instância socat o vincula a / dev / ttyS0.

socat TCP4-LISTEN: 2022, reuseaddr, fork \
PROXY: proxy: www.domain.org: 22, proxyport = 3128, proxyauth = usuário: passar

inicia um encaminhador que aceita conexões na porta 2022 e as direciona por meio
o daemon do proxy ouvindo na porta 3128 (porta proxy) no proxy do host, usando o
Método CONNECT, onde são autenticados como "usuário" com "passagem" (proxyauth). O
o proxy deve estabelecer conexões para hospedar www.domain.org na porta 22 então.

socat - OPENSSL: servidor: 4443, cafile = server.crt, cert = client.pem

é um cliente OpenSSL que tenta estabelecer uma conexão segura com um servidor SSL.
A opção cafile especifica um arquivo que contém certificados de confiança: nós confiamos no
servidor apenas quando apresenta um desses certificados e prova de que possui o
chave privada relacionada. Caso contrário, a conexão é encerrada. Com certificado de arquivo
contendo o certificado do cliente e a chave privada associada é especificada. Isto
é necessário caso o servidor deseje uma autenticação de cliente; muitos Internet
servidores não.
O primeiro endereço ('-') pode ser substituído por quase qualquer outro endereço socat.

socat OPENSSL-LISTEN: 4443, reuseaddr, pf = ip4, fork, cert = server.pem, cafile = client.crt TUBO

é um servidor OpenSSL que aceita conexões TCP, apresenta o certificado de
o arquivo server.pem e força o cliente a apresentar um certificado que é verificado
contra cafile.crt.
O segundo endereço ('PIPE') pode ser substituído por quase qualquer outro endereço socat.
Para obter instruções sobre como gerar e distribuir chaves e certificados OpenSSL, consulte
o socat docu socat-openssl.txt adicional.

eco | socat -u - arquivo: / tmp / bigfile, criar, largefile, buscar = 100000000000

cria um arquivo esparso de 100 GB; isso requer um tipo de sistema de arquivo que suporte este
(ext2, ext3, reiserfs, jfs; não minix, vfat). A operação de escrever 1 byte pode
demorar (reiserfs: alguns minutos; ext2: tempo "sem"), e o arquivo resultante pode
consome algum espaço em disco apenas com seus inodes (reiserfs: 2 MB; ext2: 16 KB).

socat tcp-l: 7777, reuseaddr, fork sistema: 'filan -i 0 -s > & 2 ', nofork

escuta as conexões TCP de entrada na porta 7777. Para cada conexão aceita,
invoca um shell. Este shell tem seu stdin e stdout diretamente conectado ao TCP
socket (nofork). O shell inicia filan e permite imprimir os endereços de soquete para
stderr (sua janela de terminal).

eco -in "\ 0 \ 14 \ 0 \ 0 \ c" | socat -u - arquivo: /usr/bin/squid.exe,seek=0x00074420

funciona como editor binário primitivo: escreve os 4 bytes 000 014 000 000 para o
executável / usr / bin / squid no deslocamento 0x00074420 (este é um patch do mundo real para fazer
o executável squid do Cygwin é executado no Windows, em maio de 2004).

socat - tcp: www.blackhat.org: 31337, readbytes = 1000

conecta-se a um serviço desconhecido e evita inundações.

socat -U TCP: destino: 9999, fechamento final TCP-L: 8888, reuseaddr, fork

mescla dados que chegam de diferentes fluxos TCP na porta 8888 em apenas um fluxo para
alvo: 9999. A opção de fechamento final evita que os processos filho sejam bifurcados pelo
segundo endereço de encerrar a conexão compartilhada para 9999 (fechar \ (2) apenas
desvincula o inode que permanece ativo enquanto o processo pai viver;
desligamento \ (2) encerraria ativamente a conexão).

socat - UDP4-DATAGRAM:192.168.1.0:123,sp=123,broadcast,range=192.168.1.0/24

envia um broadcast para a rede 192.168.1.0/24 e recebe as respostas do
timeservers lá. Ignora pacotes NTP de hosts fora desta rede.

socat - SOCKET-DATAGRAM:2:2:17:x007bxc0a80100x0000000000000000,b‐
ind=x007bx00000000x0000000000000000,setsockopt-int=1:6:1,r‐
ange=x0000xc0a80100x0000000000000000:x0000xffffff00x0000000000000000

é semanticamente equivalente ao exemplo anterior, mas todos os parâmetros são
especificado de forma genérica. o valor 6 de setsockopt-int é o valor Linux para
SO_BROADCAST.

socat - IP4-DATAGRAM:255.255.255.255:44,broadcast,range=10.0.0.0/8

envia uma transmissão para a (s) rede (s) local (is) usando o protocolo 44. Aceita respostas de
apenas o intervalo de endereços privados.

socat - UDP4-DATAGRAM:224.255.0.1:6666,bind=:6666,ip-add-membership=224.255.0.1:eth0

transfere dados de stdin para o endereço multicast especificado usando UDP. Ambos locais
e as portas remotas são 6666. Diz à interface eth0 para aceitar também multicast
pacotes de um determinado grupo. Vários hosts na rede local podem executar este
comando, então todos os dados enviados por qualquer um dos hosts serão recebidos por todos os outros
uns. Observe que há muitos motivos possíveis para a falha, incluindo filtros de IP,
problemas de roteamento, seleção de interface incorreta pelo sistema operacional, pontes ou um
switch mal configurado.

socat TCP: host2: 4443 TUN: 192.168.255.1/24,up

estabelece um lado de uma rede virtual (mas não privada!) com host2 onde um
processo semelhante pode ser executado, com UDP-L e endereço tun 192.168.255.2. Eles podem alcançar
uns aos outros usando os endereços 192.168.255.1 e 192.168.255.2. Observe que o streaming
por exemplo. via TCP ou SSL não garante a retenção dos limites do pacote e pode, portanto,
causar perda de pacotes.

socat PTY, link = / var / run / ppp, rawer INTERFACE: hdlc0

contorna o problema de que o pppd requer um dispositivo serial e, portanto, pode não ser
capaz de trabalhar em uma linha síncrona representada por um dispositivo de rede. socat
cria um PTY para deixar o pppd feliz, liga-se à interface de rede hdlc0 e pode
transferir dados entre os dois dispositivos. Use o pppd no dispositivo / var / run / ppp então.

socat -T 1 -d -d TCP-L: 10081, reuseaddr, fork, crlf SISTEMA: "echo -e \ "\\\" HTTP / 1.0 200
OK \\\ nDocumentType: texto / simples \\\ n \\\ ndata:
\ $ \ (data \) \\\ nservidor: \ $ SOCAT_SOCKADDR: \ $ SOCAT_SOCKPORT \\\ ncliente:
\ $ SOCAT_PEERADDR: \ $ SOCAT_PEERPORT \\\ n \\\ "\"; gato; eco -e \ "\\\" \\\ n \\\ "\" "

cria um servidor de eco HTTP simples: cada cliente HTTP que se conecta obtém um HTTP válido
resposta que contém informações sobre o endereço do cliente e a porta, conforme visto por
o host do servidor, o endereço do host (que pode variar em servidores com hospedagem múltipla) e o
solicitação original do cliente.

socat -d -d
UDP4-RECVFROM: 9999, so-broadcast, so-timestamp, ip-pktinfo, ip-recverr, ip-recvopts, ip-recvtos, ip-recvttl !! -
SISTEMA: 'exportação; dormir 1 ' | grep SOCAT

aguarda um pacote UDP de entrada na porta 9999 e imprime as variáveis ​​de ambiente
fornecido pela socat. Em sistemas baseados em BSD, você deve substituir ip-pktinfo por
ip-recvdstaddr, ip-recvif. Especialmente interessante é SOCAT_IP_DSTADDR: ele contém
o endereço de destino do pacote, que pode ser unicast, multicast ou broadcast
endereço.

DIAGNÓSTICO


Socat usa um mecanismo de registro que permite filtrar mensagens por gravidade. As severidades
fornecidos são mais ou menos compatíveis com a prioridade de syslog apropriada. Com um ou até
quatro ocorrências da opção de linha de comando -d, a prioridade mais baixa das mensagens que são
emitido pode ser selecionado. Cada mensagem contém um único caractere maiúsculo especificando o
gravidade das mensagens (um de F, E, W, N, I ou D)

FATAL: Condições que requerem o encerramento incondicional e imediato do programa.

ERROR: Condições que impedem o processamento adequado do programa. Normalmente, o programa é
encerrado (consulte a opção -s).

AVISO:
Algo não funcionou corretamente ou está em um estado onde ainda está correto
o processamento não pode ser garantido, mas pode ser possível.

AVISO PRÉVIO:
Ações interessantes do programa, por exemplo, para supervisão socat em algum tipo de
modo de servidor.

INFO: Descrição do que o programa faz e talvez por que isso acontece. Permite monitorar
os ciclos de vida dos descritores de arquivo.

DEBUG: Descrição de como o programa funciona, todas as chamadas de sistema ou biblioteca e seus
resultados.

As mensagens de log podem ser gravadas em stderr, em um arquivo ou em syslog.

Na saída, socat dá o status 0 se encerrado devido a EOF ou tempo limite de inatividade, com um
valor positivo em caso de erro e com valor negativo em erro fatal.

Use filan online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

  • 1
    NSIS: Sistema de instalação por script Nullsoft
    NSIS: Sistema de instalação por script Nullsoft
    NSIS (Instalação Script Nullsoft
    System) é um código aberto profissional
    sistema para criar instaladores do Windows. Isto
    é projetado para ser tão pequeno e flexível
    como possi ...
    Baixar NSIS: Nullsoft Scriptable Install System
  • 2
    senha de acesso
    senha de acesso
    AuthPass é uma senha de código aberto
    gerente com suporte para o popular e
    comprovado Keepass (kdbx 3.x AND kdbx 4.x ...
    Baixe o passe de autenticação
  • 3
    Zabbix
    Zabbix
    O Zabbix é um software aberto de classe empresarial
    solução de monitoramento distribuído de origem
    projetado para monitorar e rastrear
    desempenho e disponibilidade da rede
    servidores, dispositivos...
    Baixar Zabbix
  • 4
    KDiff3GenericName
    KDiff3GenericName
    Este repositório não é mais mantido
    e é mantido para fins de arquivamento. Ver
    https://invent.kde.org/sdk/kdiff3 for
    o código mais recente e
    https://download.kde.o...
    Baixar o KDiff3
  • 5
    USB Loader GX
    USB Loader GX
    USBLoaderGX é uma GUI para
    Carregador USB de Waninkoko, baseado em
    libwiigui. Permite listar e
    lançar jogos de Wii, jogos de Gamecube e
    homebrew no Wii e WiiU...
    Baixar USBLoaderGX
  • 6
    Firebird
    Firebird
    Firebird RDBMS oferece recursos ANSI SQL
    & roda em Linux, Windows &
    várias plataformas Unix. Características
    excelente simultaneidade e desempenho
    & potência...
    Baixar Firebird
  • Mais "

Comandos Linux

Ad