IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

filan - Online nel cloud

Esegui filan nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando filan che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


socat - Relè multiuso (SOcket CAT)

SINOSSI


socat [opzioni]
socat-V
socat -h[h[h]] | -?[?[?]]
così così
procano

DESCRIZIONE


Socat è un'utilità basata sulla riga di comando che stabilisce due flussi di byte bidirezionali e
trasferisce i dati tra di loro. Perché i flussi possono essere costruiti da un grande insieme di
diversi tipi di ricevitori e sorgenti di dati (vedi tipi di indirizzi) e perché molti indirizzi
le opzioni possono essere applicate ai flussi, socat può essere utilizzato per molti scopi diversi.

e così via è un'utilità che stampa le informazioni sui descrittori di file attivi su stdout. Esso
è stato scritto per il debug scioccato, ma potrebbe essere utile anche per altri scopi. Utilizzare il
-h opzione per trovare maggiori informazioni.

Procan è un'utilità che stampa le informazioni sui parametri di processo su stdout. Esso ha
stato scritto per comprendere meglio alcune proprietà dei processi UNIX e per il debug scioccato,
ma potrebbe essere utile anche per altri scopi.

Il ciclo di vita di un file scioccato L'istanza consiste tipicamente di quattro fasi.

Nel init fase, le opzioni della riga di comando vengono analizzate e la registrazione viene inizializzata.

Durante l' aprire fase, scioccato apre il primo indirizzo e successivamente il secondo indirizzo.
Questi passaggi di solito sono bloccanti; quindi, soprattutto per tipi di indirizzi complessi come i calzini,
le richieste di connessione o le finestre di dialogo di autenticazione devono essere completate prima che il passaggio successivo sia
iniziato.

Nel trasferimento fase, scioccato guarda entrambi i flussi di lettura e scrittura dei descrittori di file tramite
select() e, quando i dati sono disponibili su un lato ed si può scrivere dall'altra parte,
socat lo legge, esegue conversioni di caratteri di nuova riga se necessario e scrive i dati su
il descrittore del file di scrittura dell'altro flusso, quindi continua in attesa di ulteriori dati in
entrambe le direzioni.

Quando uno dei flussi raggiunge effettivamente EOF, il chiusura inizia la fase. Socat trasferimenti
la condizione EOF all'altro flusso, cioè tenta di chiudere solo il suo flusso di scrittura,
dandogli la possibilità di terminare con grazia. Per un tempo definito scioccato continua a trasferire
dati nell'altra direzione, ma poi chiude tutti i canali rimanenti e termina.

VERSIONI


Socat fornisce alcune opzioni della riga di comando che modificano il comportamento del programma. Essi
non hanno nulla a che fare con le cosiddette opzioni di indirizzo che vengono utilizzate come parti dell'indirizzo
specifiche.

-V Stampa la versione e le informazioni sulle funzionalità disponibili su stdout ed esci.

-h | -?
Stampa un testo di aiuto su stdout che descrive le opzioni della riga di comando e l'indirizzo disponibile
tipi e uscire.

-hh | - ??
Come -h, più un elenco dei nomi brevi di tutte le opzioni di indirizzo disponibili. Alcuni
le opzioni dipendono dalla piattaforma, quindi questo output è utile per controllare il
particolare attuazione.

-hhh | - ???
Come -hh, più un elenco di tutti i nomi delle opzioni di indirizzo disponibili.

-d Senza questa opzione, vengono generati solo i messaggi fatali e di errore; applicando questo
l'opzione stampa anche i messaggi di avviso. Vedere DIAGNOSTICA per ulteriori informazioni.

-d -d Stampa messaggi fatali, di errore, di avviso e di avviso.

-d -d -d
Stampa messaggi fatali, di errore, di avviso, di avviso e informativi.

-d -d -d -d
Stampa messaggi fatali, di errore, di avviso, di avviso, di informazione e di debug.

-D Registra le informazioni sui descrittori di file prima di iniziare la fase di trasferimento.

-ly[ ]
Scrive messaggi su syslog invece che su stderr; gravità come definito con l'opzione -d.
Con optional , è possibile selezionare il tipo syslog, il valore predefinito è "daemon".
Le librerie di terze parti potrebbero non obbedire a questa opzione.

-lf
Scrive messaggi a [nome file] invece di stderr. Alcune terze parti
le librerie, in particolare libwrap, potrebbero non obbedire a questa opzione.

-ls Scrive messaggi su stderr (questa è l'impostazione predefinita). Alcune librerie di terze parti potrebbero
non obbedisce a questa opzione, in particolare libwrap sembra loggare solo su syslog.

-lp
Sostituisce il nome del programma stampato nei messaggi di errore e utilizzato per la costruzione
nomi di variabili d'ambiente.

-lu Estende il timestamp dei messaggi di errore alla risoluzione di microsecondi. Non funziona
quando si accede a syslog.

-lm[ ]
Modalità registro misto. Durante l'avvio i messaggi vengono stampati su stderr; quando scioccato inizio
il ciclo di fase di trasferimento o la modalità demone (cioè dopo aver aperto tutti i flussi e prima
iniziare il trasferimento dei dati, oppure, con prese di ascolto con opzione fork, prima del
prima accettare la chiamata), passa la registrazione a syslog. Con optional , il
è possibile selezionare il tipo di syslog, il valore predefinito è "daemon".

-sx Aggiunge il nome host ai messaggi di registro. Utilizza il valore dalla variabile di ambiente HOSTNAME o
il valore recuperato con uname() se HOSTNAME non è impostato.

-v Scrive i dati trasferiti non solo sui loro flussi di destinazione, ma anche su stderr.
Il formato di output è testo con alcune conversioni per la leggibilità e preceduto da
"> " o "< " che indicano le direzioni del flusso.

-x Scrive i dati trasferiti non solo sui loro flussi di destinazione, ma anche su stderr.
Il formato di output è esadecimale, preceduto da "> " o "< " che indica il flusso
indicazioni. Può essere combinato con -v .

-B
Imposta il blocco del trasferimento dati [taglia_t]. Al massimo i byte vengono trasferiti
per passo. L'impostazione predefinita è 8192 byte.

-s Per impostazione predefinita, scioccato termina quando si verifica un errore per impedire al processo di
in esecuzione quando non è stato possibile applicare alcune opzioni. Con questa opzione, scioccato è sciatto
con errori e tenta di continuare. Anche con questa opzione, socat uscirà il
fatali e interromperà i tentativi di connessione quando i controlli di sicurezza falliscono.

-T
Quando un canale ha raggiunto EOF, la parte di scrittura dell'altro canale viene chiusa.
Poi, scioccato aspetta [timeval] secondi prima di terminare. Il valore predefinito è 0.5
secondi. Questo timeout si applica solo agli indirizzi in cui è possibile scrivere e leggere parti
chiuso autonomamente. Quando durante l'intervallo di timeout la parte letta fornisce EOF,
socat termina senza attendere il timeout.

-T
Timeout di inattività totale: quando socat è già nel ciclo di trasferimento e niente
è successo per [timeval] secondi (nessun dato è arrivato, nessuna interruzione
verificato...) quindi termina. Utile con protocolli come UDP che non possono
trasferimento EOF.

-u Utilizza la modalità unidirezionale. Il primo indirizzo viene utilizzato solo per la lettura e il
il secondo indirizzo viene utilizzato solo per la scrittura (esempio).

-U Utilizza la modalità unidirezionale in direzione inversa. Il primo indirizzo viene utilizzato solo per
scrittura e il secondo indirizzo viene utilizzato solo per la lettura.

-g Durante l'analisi dell'opzione indirizzo, non controllare se l'opzione è considerata utile in
l'ambiente di indirizzo specificato. Usalo se vuoi forzare, ad esempio, l'apparecchio di a
opzione socket a un dispositivo seriale.

-L
Se il file di blocco esiste, esce con errore. Se il file di blocco non esiste, lo crea e
continua, scollega il file di blocco all'uscita.

-W
Se il file di blocco esiste, attende finché non scompare. Quando il file di blocco non esiste,
lo crea e continua, scollega il file di blocco all'uscita.

-4 Utilizzare la versione IP 4 nel caso in cui gli indirizzi non specifichino implicitamente o esplicitamente
una versione; questa è l'impostazione predefinita.

-6 Utilizzare la versione IP 6 nel caso in cui gli indirizzi non specifichino implicitamente o esplicitamente
una versione.

INDIRIZZO SPECIFICHE TECNICHE


Con gli argomenti della riga di comando dell'indirizzo, l'utente dà scioccato istruzioni e il
informazioni necessarie per stabilire i flussi di byte.

Una specifica di indirizzo di solito consiste in una parola chiave del tipo di indirizzo, zero o più
parametri dell'indirizzo richiesti separati da ':' dalla parola chiave e l'uno dall'altro, e
zero o più opzioni di indirizzo separate da ','.

La parola chiave specifica il tipo di indirizzo (ad es. TCP4, OPEN, EXEC). Per alcune parole chiave lì
esistono sinonimi ('-' per STDIO, TCP per TCP4). Le parole chiave non fanno distinzione tra maiuscole e minuscole. Per pochi
tipi di indirizzo speciali, la parola chiave può essere omessa: Specifiche dell'indirizzo che iniziano con a
si presume che i numeri siano indirizzi FD (raw file descriptor); se viene trovata una '/' prima di
prima ':' o ',', si assume GOPEN (file generico aperto).

Il numero e il tipo di parametri dell'indirizzo richiesti dipendono dal tipo di indirizzo. Ad esempio, TCP4
richiede una specifica del server (nome o indirizzo) e una specifica della porta (numero o
Nome di Servizio).

Con ogni indirizzo possono essere fornite zero o più opzioni di indirizzo. Influenzano l'indirizzo in
in qualche modo. Le opzioni consistono in una parola chiave opzione o una parola chiave opzione e un valore,
separati da '='. Le parole chiave delle opzioni non fanno distinzione tra maiuscole e minuscole. Per filtrare le opzioni che
sono utili con un tipo di indirizzo, ogni opzione è membro di un gruppo di opzioni. Per ciascuno
tipo di indirizzo è consentito un insieme di gruppi di opzioni. Solo opzioni appartenenti a uno dei
questi gruppi di indirizzi possono essere utilizzati (tranne con l'opzione -g).

Vengono anche chiamate le specifiche degli indirizzi che seguono lo schema di cui sopra singolo indirizzo
specifiche. Due indirizzi singoli possono essere combinati con "!!" formare un doppio Digitare
indirizzo per un canale. Qui, il primo indirizzo è usato da scioccato per la lettura dei dati, e
il secondo indirizzo per la scrittura dei dati. Non c'è modo di specificare un'opzione solo una volta per
essere applicato a entrambi i singoli indirizzi.

Di solito, gli indirizzi vengono aperti in modalità lettura/scrittura. Quando un indirizzo fa parte di un dual
specifica dell'indirizzo, o quando viene utilizzata l'opzione -u o -U, un indirizzo potrebbe essere utilizzato solo per
leggere o per scrivere. Considerare che questo è importante con alcuni tipi di indirizzo.

Con socat versione 1.5.0 e successive, l'analisi lessicale cerca di gestire le virgolette e
parentesi in modo significativo e consente l'escape dei caratteri speciali. Se uno dei
caratteri ( { [ ' viene trovato, il corrispondente carattere di chiusura - ) } ] ' - viene cercato
per; possono anche essere nidificati. All'interno di questi costrutti, socats caratteri speciali e
stringhe : , !! non sono trattati in modo speciale. È possibile eseguire l'escape di tutti quei caratteri e stringhe
con \ o entro ""

INDIRIZZO TIPI


Questa sezione descrive i tipi di indirizzi disponibili con le loro parole chiave, parametri e
semantica.

CREARE:
Si apre con creat() e usa il descrittore di file per scrivere. Questo
il tipo di indirizzo richiede un contesto di sola scrittura, perché un file aperto con creat non può
essere letto da.
Non è possibile applicare flag come O_LARGEFILE. Se ne hai bisogno usa OPEN con le opzioni
creare, creare.
deve essere un percorso valido esistente o non esistente. Se è un nome
pipe, creat() potrebbe bloccarsi; Se si riferisce a un socket, questo è un errore.
Gruppi di opzioni: FD,REG,NAMED
Opzioni utili: modalità, utente, gruppo, scollega in anticipo, scollega in ritardo, aggiungi
Vedi anche: OPEN, GOPEN

ESECUZIONE:
Forca un sottoprocesso che stabilisce la comunicazione con il suo processo padre e
invoca il programma specificato con execvp() . è un semplice comando
con argomenti separati da spazi singoli. Se il nome del programma contiene una '/', il
la parte dopo l'ultimo '/' viene presa come ARGV[0]. Se il nome del programma è un parente
path, si applica la semantica execvp() per trovare il programma tramite $PATH. A seguito di
avvio del programma di successo, scioccato scrive i dati sullo stdin del processo e legge da
il suo stdout usando un socket di dominio UNIX generato da socketpair() per impostazione predefinita.
(esempio)
Gruppi di opzioni: FD,SOCKET,EXEC,FORK,TERMIOS
Opzioni utili: percorso, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setid, pipe, login, sigint, sigquit
Vedi anche: SISTEMA

FD:
Utilizza il descrittore di file . Deve già esistere come file UN*X valido
descrittore.
Gruppi di opzioni: FD (TERMIOS,REG,SOCKET)
Vedi anche: STDIO, STDIN, STDOUT, STDERR

APERTO:
(Aperto generico) Questo tipo di indirizzo tenta di gestire qualsiasi voce del file system tranne
utilmente le directory. può essere un percorso relativo o assoluto. Se è già
esiste, il suo tipo è selezionato. In caso di socket di dominio UNIX, scioccato si connette; Se
la connessione non riesce, scioccato presuppone un socket datagram e usa le chiamate sendto(). Se la
l'ingresso non è una presa, scioccato lo apre applicando il flag O_APPEND. Se non lo fa
esiste, viene aperto con il flag O_CREAT come un file normale (esempio).
Gruppi di opzioni: FD,REG,SOCKET,NAMED,OPEN
Vedi anche: OPEN, CREATE, UNIX-CONNECT

IP-SENDTO: :
Apre un socket IP non elaborato. A seconda delle specifiche dell'host o dell'opzione pf, protocollo IP
viene utilizzata la versione 4 o 6. Utilizza inviare pacchetti a [Indirizzo IP]
e riceve pacchetti dall'host, ignora i pacchetti da altri host. Protocollo 255
utilizza il socket raw con l'intestazione IP che fa parte dei dati.
Gruppi di opzioni: FD,SOCKET,IP4,IP6
Opzioni utili: pf, ttl
Vedi anche: IP4-SENDTO, IP6-SENDTO, IP-RECVFROM, IP-RECV, UDP-SENDTO, UNIX-SENDTO

INTERFACCIA:
Comunica con una rete connessa su un'interfaccia utilizzando pacchetti raw inclusi
dati a livello di collegamento. è il nome dell'interfaccia di rete. Attualmente solo
disponibile su Linux. Gruppi di opzioni: FD,SOCKET
Opzioni utili: pf, type
Vedi anche: ip-recv

IP4-INVIA A: :
Come IP-SENDTO, ma usa sempre IPv4.
Gruppi di opzioni: FD,SOCKET,IP4

IP6-INVIA A: :
Come IP-SENDTO, ma usa sempre IPv6.
Gruppi di opzioni: FD,SOCKET,IP6

IP-DATAGRAMMA: :
Invia i dati in uscita all'indirizzo specificato che può essere in particolare una trasmissione
o indirizzo multicast. I pacchetti in arrivo sul socket locale vengono controllati se il loro
gli indirizzi di origine corrispondono alle opzioni RANGE o TCPWRAP. Questo tipo di indirizzo può ad esempio
essere utilizzato per implementare trasmissioni o multicast simmetriche o asimmetriche
comunicazioni.
Gruppi di opzioni: FD, SOCKET, IP4, IP6, RANGE
Opzioni utili: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-aggiungi-appartenenza, ttl, tos, pf
Vedi anche: IP4-DATAGRAM, IP6-DATAGRAM, IP-SENDTO, IP-RECVFROM, IP-RECV, UDP-DATAGRAM

IP4-DATAGRAMMA: :
Come IP-DATAGRAM, ma usa sempre IPv4. (esempio)
Gruppi di opzioni: FD,SOCKET,IP4,RANGE

IP6-DATAGRAMMA: :
Come IP-DATAGRAM, ma usa sempre IPv6. Si prega di notare che IPv6 non lo sa
trasmissioni.
Gruppi di opzioni: FD,SOCKET,IP6,RANGE

IP-RECVDA:
Apre un socket IP grezzo di . A seconda dell'opzione pf, versione protocollo IP 4
o 6 viene utilizzato. Riceve un pacchetto da un peer non specificato e può inviarne uno o
più pacchetti di risposta a quel peer. Questa modalità è particolarmente utile con fork
opzione in cui ogni pacchetto in arrivo - da peer arbitrari - viene gestito dal proprio
sottoprocesso. Ciò consente un comportamento simile ai tipici server basati su UDP come
ntpd o denominato.
Si prega di notare che i pacchetti di risposta potrebbero essere recuperati come traffico in entrata quando il mittente
e l'indirizzo IP del ricevitore sono identici perché non esiste un numero di porta per
distinguere le prese.
Questo indirizzo funziona bene con i peer di indirizzi IP-SENDTO (vedi sopra). Protocollo 255
utilizza il socket raw con l'intestazione IP che fa parte dei dati.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,BAMBINO,RANGE
Opzioni utili: pf, fork, range, ttl, broadcast
Vedi anche: IP4-RECVFROM, IP6-RECVFROM, IP-SENDTO, IP-RECV, UDP-RECVFROM,
UNIX-RECV DA

IP4-RECVDA:
Come IP-RECVFROM, ma usa sempre IPv4.
Gruppi di opzioni: FD,SOCKET,IP4,CHILD,RANGE

IP6-RECVDA:
Come IP-RECVFROM, ma usa sempre IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,CHILD,RANGE

IP-RECV:
Apre un socket IP grezzo di . A seconda dell'opzione pf, versione protocollo IP 4
o 6 viene utilizzato. Riceve pacchetti da più peer non specificati e unisce i
dati. Non sono possibili risposte. Può essere, ad esempio, indirizzato da socat IP-SENDTO
rivolgersi ai coetanei. Il protocollo 255 utilizza il socket raw con l'intestazione IP che fa parte di
i dati.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,RANGE
Opzioni utili: pf, range
Vedi anche: IP4-RECV, IP6-RECV, IP-SENDTO, IP-RECVFROM, UDP-RECV, UNIX-RECV

IP4-RECV:
Come IP-RECV, ma usa sempre IPv4.
Gruppi di opzioni: FD,SOCKET,IP4,RANGE

IP6-RECV:
Come IP-RECV, ma usa sempre IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,RANGE

APRIRE:
Si apre usando la chiamata di sistema open() (esempio). Questa operazione fallisce su
Socket di dominio UNIX.
Nota: questo tipo di indirizzo è raramente utile in modalità bidirezionale.
Gruppi di opzioni: FD,REG,NAMED,OPEN
Opzioni utili: creat, excl, noatime, nofollow, append, rdonly, wronly, lock,
readbytes, ignoreeof
Vedi anche: CREATE, GOPEN, UNIX-CONNECT

APERTO: :
Tenta di stabilire una connessione SSL a [Servizio TCP] attivo [Indirizzo IP]
utilizzando TCP/IP versione 4 o 6 a seconda della specifica dell'indirizzo, della risoluzione del nome o
opzione pf.
NOTA: fino alla versione 1.7.2.4 il certificato del server veniva verificato solo per la validità
contro l'archivio certificati di sistema o cafile o capath, ma non per la corrispondenza con
il nome del server o il suo indirizzo IP. Dalla versione 1.7.3.0 socat controlla il peer
certificato per partita con il parametro o il valore di
Opzione openssl-nomecomune. Socat cerca di confrontarlo con i certificati
soggetto commonName e l'estensione di certificazioni SubjectAltName nomi DNS.
I caratteri jolly nel certificato sono supportati.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,TCP,OPENSSL,RETRY
Opzioni utili: cifratura, metodo, verifica, nome comune cafile, capath, certificato,
chiave, comprimere, associare, pf, timeout connessione, sourceport, riprovare
Vedi anche: OPENSSL-LISTEN, TCP

OPENSSL-ASCOLTA:
Ascolta su tcp [Servizio TCP]. La versione IP è 4 o quella specificata con
pf. Quando viene accettata una connessione, questo indirizzo si comporta come server SSL.
Nota: probabilmente vorrai utilizzare l'opzione del certificato con questo indirizzo.
NOTA: la validità del certificato client viene verificata solo rispetto a cafile o capath,
ma non per la corrispondenza con il nome del cliente o il suo indirizzo IP!
Gruppi di opzioni: FD, PRESA, IP4, IP6, TCP, ASCOLTA, APRISSL, BAMBINO, GAMMA, RIPROVA
Opzioni utili: pf, cifrario, metodo, verifica, nome comune cafile, capath, certificato,
chiave, compressione, fork, associazione, intervallo, tcpwrap, su, reuseaddr, riprova
Vedi anche: OPENSSL, TCP-LISTEN

TUBO:
Se esiste già, è aperto. Se non esiste, una named pipe è
creato e aperto. A partire dalla versione socat 1.4.3, la named pipe viene rimossa
quando l'indirizzo è chiuso (ma vedi l'opzione unlink-close
Nota: quando una pipe viene utilizzata sia per la lettura che per la scrittura, funziona come servizio di eco.
Nota: quando una pipe viene utilizzata sia per la lettura che per la scrittura e socat tenta di scrivere
più byte di quanti la pipe possa bufferizzare (Linux 2.4: 2048 byte), socat potrebbe bloccarsi.
Considerare l'utilizzo dell'opzione socat, ad esempio -b 2048
Gruppi di opzioni: FD,NAMED,OPEN
Opzioni utili: rdonly, nonblock, group, user, mode, unlink-early
Vedi anche: pipa senza nome

TUBO Crea una pipe senza nome e la usa per leggere e scrivere. Funziona come un'eco,
perché tutto ciò che viene scritto appare immediatamente come dati letti.
Nota: quando socat tenta di scrivere più byte di quanti la pipe possa accodare (Linux 2.4: 2048
byte), socat potrebbe bloccarsi. Considera, ad esempio, l'uso dell'opzione -b 2048
Gruppi di opzioni: FD
Vedi anche: pipa con nome

DELEGA: : :
Si connette a un server proxy HTTP sulla porta 8080 utilizzando TCP/IP versione 4 o 6
a seconda della specifica dell'indirizzo, della risoluzione del nome o dell'opzione pf, e invia a
CONNECT richiesta per hostname:port. Se il proxy concede l'accesso e riesce a
connettersi al target, il trasferimento dei dati tra socat e il target può iniziare. Nota
che il traffico non deve essere HTTP ma può essere un protocollo arbitrario.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,TCP,HTTP,RETRY
Opzioni utili: proxyport, ignorecr, proxyauth, resolve, crnl, bind,
connessione timeout, mss, sourceport, riprova
Vedi anche: SOCKS, TCP

PTY Genera uno pseudo terminale (pty) e usa il suo lato master. Un altro processo potrebbe
apri il lato slave del pty usandolo come una linea seriale o un terminale. (esempio). Se
sono disponibili sia il meccanismo ptmx che quello openpty, viene utilizzato ptmx (POSIX).
Gruppi di opzioni: FD,NAMED,PTY,TERMIOS
Opzioni utili: link, openpty, wait-slave, modalità, utente, gruppo
Vedi anche: UNIX-LISTEN, PIPE, EXEC, SYSTEM

LINEA DI LETTURA
Utilizza la readline GNU e la cronologia su stdio per consentire la modifica e il riutilizzo delle linee di input
(esempio).
A causa delle restrizioni sulla licenza, la funzione readline è disabilitata in Debian. Vedere
BUG.
Puoi invece usare STDIO.

SCTP-CONNECT: :
Stabilisce una connessione di flusso SCTP al specificato [Indirizzo IP] e
[Servizio TCP] utilizzando TCP/IP versione 4 o 6 a seconda dell'indirizzo
specifica, risoluzione del nome o opzione pf.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,SCTP,CHILD,RETRY
Opzioni utili: bind, pf, connect-timeout, tos, mtudiscover, sctp-maxseg,
sctp-nodelay, nonblock, sourceport, retry, readbytes
Vedi anche: SCTP4-CONNECT, SCTP6-CONNECT, SCTP-LISTEN, TCP-CONNECT

SCTP4-CONNECT: :
Come SCTP-CONNECT, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD,SOCKET,IP4,SCTP,CHILD,RETRY

SCTP6-CONNECT: :
Come SCTP-CONNECT, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,SCTP,CHILD,RETRY

SCTP-ASCOLTA:
Ascolta su [Servizio TCP] e accetta una connessione TCP/IP. La versione IP è
4 o quello specificato con l'opzione indirizzo pf, opzione socat (-4, -6), o
variabile d'ambiente SOCAT_DEFAULT_LISTEN_IP. Nota che aprendo questo indirizzo
di solito si blocca finché un client non si connette.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4, IP6, SCTP, RIPROVA
Opzioni utili: crnl, fork, bind, range, tcpwrap, pf, max-child, backlog,
sctp-maxseg, sctp-nodelay, su, reuseaddr, riprova, cool-write
Vedi anche: SCTP4-LISTEN, SCTP6-LISTEN, TCP-LISTEN, SCTP-CONNECT

SCTP4-ASCOLTA:
Come SCTP-LISTEN, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4, SCTP, RIPROVA

SCTP6-ASCOLTA:
Come SCTP-LISTEN, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP6, SCTP, RIPROVA

CONNESSIONE PRESA: : :
Crea uno stream socket usando il primo e il secondo parametro socket dato e
SOCK_STREAM (vedi man socket\(2)) e si connette all'indirizzo remoto. Il due
i parametri socket devono essere specificati da numeri int. Consulta il tuo sistema operativo
documentazione e include file per trovare i valori appropriati. L'indirizzo remoto
deve essere la rappresentazione dei dati di una struttura sockaddr senza sa_family e (BSD)
componenti sa_len.
Si prega di notare che è possibile, oltre alle opzioni dei gruppi specificati, anche utilizzare
opzioni di protocolli di livello superiore quando si applica l'opzione socat -g.
Gruppi di opzioni: FD,SOCKET,CHILD,RETRY
Opzioni utili: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO

PRESA-DATAGRAMMA: : : :
Crea un socket datagramma usando i primi tre parametri del socket dati (vedi man
socket\(2)) e invia i dati in uscita all'indirizzo remoto. Le tre prese
i parametri devono essere specificati da numeri int. Consulta la documentazione del tuo sistema operativo e
include file per trovare i valori appropriati. L'indirizzo remoto deve essere il dato
rappresentazione di una struttura sockaddr senza sa_family e (BSD) sa_len
componenti.
Si prega di notare che è possibile, oltre alle opzioni dei gruppi specificati, anche utilizzare
opzioni di protocolli di livello superiore quando si applica l'opzione socat -g.
Gruppi di opzioni: FD,SOCKET,RANGE
Opzioni utili: bind, range, setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: UDP-DATAGRAM, IP-DATAGRAM, SOCKET-SENDTO, SOCKET-RECV, SOCKET-RECVFROM

ASCOLTA PRESA: : :
Crea uno stream socket usando il primo e il secondo parametro socket dato e
SOCK_STREAM (vedi man socket\(2)) e attende le connessioni in entrata su
indirizzo locale. I due parametri socket devono essere specificati da numeri int.
Consultare la documentazione del sistema operativo e includere i file per trovare i valori appropriati. Il
indirizzo-locale deve essere la rappresentazione dei dati di una struttura sockaddr senza
componenti sa_family e (BSD) sa_len.
Si prega di notare che è possibile, oltre alle opzioni dei gruppi specificati, anche utilizzare
opzioni di protocolli di livello superiore quando si applica l'opzione socat -g.
Gruppi di opzioni: FD, PRESA, ASCOLTA, GAMMA, BAMBINO, RIPROVA
Opzioni utili: setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO,
PRESA-SENDTO

PRESA-RECV: : : :
Crea un socket usando i tre parametri socket dati (vedi man socket\(2)) e
lo lega a . Riceve i dati in arrivo. I tre parametri devono
essere specificato da numeri int. Consulta la documentazione del tuo sistema operativo e includi i file per
trovare i valori appropriati. L'indirizzo locale deve essere la rappresentazione dei dati di a
struttura sockaddr senza componenti sa_family e (BSD) sa_len.
Gruppi di opzioni: FD,SOCKET,RANGE
Opzioni utili: range, setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: UDP-RECV, IP-RECV, UNIX-RECV, SOCKET-DATAGRAM, SOCKET-SENDTO,
PRESA-RECV DA

PRESA-RECVDA: : : :
Crea un socket usando i tre parametri socket dati (vedi man socket\(2)) e
lo lega a . Riceve i dati in arrivo e invia le risposte al
mittente. I primi tre parametri devono essere specificati come numeri int. Consultare
la documentazione del sistema operativo e includi i file per trovare i valori appropriati. Il
indirizzo-locale deve essere la rappresentazione dei dati di una struttura sockaddr senza
componenti sa_family e (BSD) sa_len.
Gruppi di opzioni: FD,SOCKET,BAMBINO,RANGE
Opzioni utili: fork, range, setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: UDP-RECVFROM, IP-RECVFROM, UNIX-RECVFROM, SOCKET-DATAGRAM, SOCKET-SENDTO,
PRESA-RECV

PRESA-INVIA A: : : :
Crea un socket usando i tre parametri del socket dati (vedi man socket\(2)).
Invia i dati in uscita all'indirizzo indicato e riceve le risposte. I tre
i parametri devono essere specificati come numeri int. Consulta la documentazione del tuo sistema operativo e
include file per trovare i valori appropriati. L'indirizzo remoto deve essere il dato
rappresentazione di una struttura sockaddr senza sa_family e (BSD) sa_len
componenti.
Gruppi di opzioni: FD,SOCKET
Opzioni utili: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Vedi anche: UDP-SENDTO, IP-SENDTO, UNIX-SENDTO, SOCKET-DATAGRAM, SOCKET-RECV
PRESA-RECV DA

CALZINI4: : :
Si collega tramite [Indirizzo IP] a [Indirizzo IPv4] attivo [TCP
service], utilizzando il protocollo calzini versione 4 su IP versione 4 o 6 a seconda di
specifica dell'indirizzo, risoluzione del nome o opzione pf (esempio).
Gruppi di opzioni: FD,SOCKET,IP4,IP6,TCP,SOCKS4,RETRY
Opzioni utili: socksuser, calzino, sourceport, pf, retry
Vedi anche: SOCKS4A, PROXY, TCP

CALZINI4A: : :
come SOCKS4, ma usa il protocollo calzini versione 4a, lasciando così la risoluzione del nome host
al server dei calzini.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,TCP,SOCKS4,RETRY

Stderr Utilizza il descrittore di file 2.
Gruppi di opzioni: FD (TERMIOS,REG,SOCKET)
Vedi anche: FD

STDIN Utilizza il descrittore di file 0.
Gruppi di opzioni: FD (TERMIOS,REG,SOCKET)
Opzioni utili: readbytes
Vedi anche: FD

STDIO Utilizza il descrittore di file 0 per la lettura e 1 per la scrittura.
Gruppi di opzioni: FD (TERMIOS,REG,SOCKET)
Opzioni utili: readbytes
Vedi anche: FD

STDOUT Utilizza il descrittore di file 1.
Gruppi di opzioni: FD (TERMIOS,REG,SOCKET)
Vedi anche: FD

SISTEMA:
Forca un sottoprocesso che stabilisce la comunicazione con il suo processo padre e
richiama il programma specificato con system() . Si prega di notare che
[stringa] non deve contenere ',' o "!!", e i metacaratteri della shell potrebbero doverlo
essere protetto. Dopo aver avviato con successo il programma, scioccato scrive i dati nello stdin del
processo e legge dal suo stdout.
Gruppi di opzioni: FD,SOCKET,EXEC,FORK,TERMIOS
Opzioni utili: percorso, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setid, pipe, sigint, sigquit
Vedi anche: EXEC

TCP: :
Si connette a [Servizio TCP] attivo [Indirizzo IP] utilizzando TCP/IP versione 4 o 6
a seconda della specifica dell'indirizzo, della risoluzione del nome o dell'opzione pf.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,TCP,RETRY
Opzioni utili: crnl, bind, pf, connect-timeout, tos, mtudiscover, mss, nodelay,
nonblock, sourceport, riprova, readbytes
Vedi anche: TCP4, TCP6, TCP-LISTEN, UDP, SCTP-CONNECT, UNIX-CONNECT

TCP4: :
Come TCP, ma supporta solo il protocollo IPv4 (esempio).
Gruppi di opzioni: FD,SOCKET,IP4,TCP,RETRY

TCP6: :
Come TCP, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,TCP,RETRY

TCP-ASCOLTA:
Ascolta su [Servizio TCP] e accetta una connessione TCP/IP. La versione IP è
4 o quello specificato con l'opzione indirizzo pf, opzione socat (-4, -6), o
variabile d'ambiente SOCAT_DEFAULT_LISTEN_IP. Nota che aprendo questo indirizzo
di solito si blocca finché un client non si connette.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4, IP6, TCP, RIPROVA
Opzioni utili: crnl, fork, bind, range, tcpwrap, pf, max-child, backlog, mss,
su, reuseaddr, riprova, cool-write
Vedere anche: TCP4-LISTEN, TCP6-LISTEN, UDP-LISTEN, SCTP-LISTEN, UNIX-LISTEN,
OPENSSL-ASCOLTA, TCP-CONNECT

TCP4-ASCOLTA:
Come TCP-LISTEN, ma supporta solo il protocollo IPv4 (esempio).
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4, TCP, RIPROVA

TCP6-ASCOLTA:
Come TCP-LISTEN, ma supporta solo il protocollo IPv6.
Ulteriore opzione utile: ipv6only
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP6, TCP, RIPROVA

TUN[: / ]
Crea un dispositivo TUN/TAP Linux e facoltativamente gli assegna l'indirizzo e la maschera di rete
dato dai parametri. L'interfaccia di rete risultante è quasi pronta per l'uso entro
altri processi; socat serve il suo "lato filo". Questo indirizzo richiede lettura e scrittura
accesso al dispositivo di clonazione del tunnel, di solito /dev/net/tun , nonché autorizzazione
per impostare alcuni ioctl(). Opzione se in alto is necessario a subito attivare , il
interfaccia!
Gruppi di opzioni: FD,NAMED,OPEN,TUN
Opzioni utili: iff-up, tun-device, tun-name, tun-type, iff-no-pi
Vedi anche: ip-recv

UDP: :
Si connette a [Servizio UDP] attivo [Indirizzo IP] utilizzando UDP/IP versione 4 o 6
a seconda della specifica dell'indirizzo, della risoluzione del nome o dell'opzione pf.
Si prega di notare che, a causa delle proprietà del protocollo UDP, nessuna connessione reale è
stabilito; i dati devono essere inviati per la "connessione" al server e nessuna fine del file
condizione può essere trasportato.
Gruppi di opzioni: FD,SOCKET,IP4,IP6
Opzioni utili: ttl, tos, bind, sourceport, pf
Vedi anche: UDP4, UDP6, UDP-LISTEN, TCP, IP

UDP4: :
Come UDP, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD,SOCKET,IP4

UDP6: :
Come UDP, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6

DATAGRAMMA UDP: :
Invia i dati in uscita all'indirizzo specificato che può essere in particolare una trasmissione
o indirizzo multicast. I pacchetti in arrivo sul socket locale vengono controllati per il
porta remota corretta e se i loro indirizzi di origine corrispondono alle opzioni RANGE o TCPWRAP.
Questo tipo di indirizzo può essere utilizzato ad esempio per implementare simmetrico o asimmetrico
comunicazioni broadcast o multicast.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,RANGE
Opzioni utili: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-membership, ttl, tos, sourceport, pf
Vedi anche: UDP4-DATAGRAM, UDP6-DATAGRAM, UDP-SENDTO, UDP-RECVFROM, UDP-RECV,
CONNESSIONE UDP, ASCOLTO UDP, DATAGRAMMA IP

UDP4-DATAGRAMMA: :
Come UDP-DATAGRAM, ma supporta solo il protocollo IPv4 (esempio1, esempio2).
Gruppi di opzioni: FD,SOCKET,IP4, RANGE

UDP6-DATAGRAMMA: :
Come UDP-DATAGRAM, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,RANGE

UDP-ASCOLTA:
Attende l'arrivo di un pacchetto UDP/IP [Servizio UDP] e si "ricollega" a
mittente. La versione IP accettata è 4 o quella specificata con l'opzione pf. Per favore
si noti che, a causa delle proprietà del protocollo UDP, non viene stabilita alcuna connessione reale; dati
deve arrivare prima dal peer e nessuna condizione di fine file può essere trasportata.
Nota che l'apertura di questo indirizzo di solito si blocca finché un client non si connette.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4, IP6
Opzioni utili: fork, bind, range, pf
Vedi anche: UDP, UDP4-ASCOLTA, UDP6-ASCOLTA, TCP-ASCOLTA

UDP4-ASCOLTA:
Come UDP-LISTEN, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP4

UDP6-ASCOLTA:
Come UDP-LISTEN, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD, PRESA, ASCOLTO, BAMBINO, GAMMA, IP6

UDP-SENDTO: :
Comunica con il socket peer specificato, definito da [Servizio UDP] attivo
[Indirizzo IP], utilizzando UDP/IP versione 4 o 6 a seconda dell'indirizzo
specifica, risoluzione del nome o opzione pf. Invia e riceve pacchetti
pacchetti solo da quel socket peer. Questo indirizzo implementa efficacemente un datagramma
cliente. Funziona bene con i peer di indirizzi socat UDP-RECVFROM e UDP-RECV.
Gruppi di opzioni: FD,SOCKET,IP4,IP6
Opzioni utili: ttl, tos, bind, sourceport, pf
Vedi anche: UDP4-SENDTO, UDP6-SENDTO, UDP-RECVFROM, UDP-RECV, UDP-CONNECT,
UDP-ASCOLTA, IP-INVIA A

UDP4-INVIA A: :
Come UDP-SENDTO, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD,SOCKET,IP4

UDP6-INVIA A: :
Come UDP-SENDTO, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6

UDP-RECVDA:
Crea un socket UDP su [Servizio UDP] che utilizza UDP/IP versione 4 o 6 a seconda
sull'opzione pf. Riceve un pacchetto da un peer non specificato e può inviarne uno o
più pacchetti di risposta a quel peer. Questa modalità è particolarmente utile con l'opzione fork
dove ogni pacchetto in arrivo - da peer arbitrari - è gestito dal proprio sub
processi. Ciò consente un comportamento simile ai tipici server basati su UDP come ntpd o
di nome. Questo indirizzo funziona bene con i peer di indirizzi socat UDP-SENDTO.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,BAMBINO,RANGE
Opzioni utili: fork, ttl, tos, bind, sourceport, pf
Vedi anche: UDP4-RECVFROM, UDP6-RECVFROM, UDP-SENDTO, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-RECVDA, UNIX-RECVDA

UDP4-RECVFROM:
Come UDP-RECVFROM, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD,SOCKET,IP4,CHILD,RANGE

UDP6-RECVFROM:
Come UDP-RECVFROM, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,CHILD,RANGE

UDP-RECV:
Crea un socket UDP su [Servizio UDP] che utilizza UDP/IP versione 4 o 6 a seconda
sull'opzione pf. Riceve pacchetti da più peer non specificati e unisce i
dati. Non sono possibili risposte. Funziona bene con, ad esempio, l'indirizzo socat UDP-SENDTO
colleghi; si comporta in modo simile a un server syslog.
Gruppi di opzioni: FD,SOCKET,IP4,IP6,RANGE
Opzioni utili: fork, pf, bind, sourceport, ttl, tos
Vedi anche: UDP4-RECV, UDP6-RECV, UDP-SENDTO, UDP-RECVFROM, UDP-CONNECT, UDP-LISTEN,
IP-RECV, UNIX-RECV

UDP4-RECV:
Come UDP-RECV, ma supporta solo il protocollo IPv4.
Gruppi di opzioni: FD,SOCKET,IP4,RANGE

UDP6-RECV:
Come UDP-RECV, ma supporta solo il protocollo IPv6.
Gruppi di opzioni: FD,SOCKET,IP6,RANGE

UNIX-CONNECT:
Si connette a supponendo che sia un socket di dominio UNIX. Se non
esiste, questo è un errore; Se non è un socket di dominio UNIX, questo è un
errore; Se è un socket di dominio UNIX, ma nessun processo è in ascolto, questo è
un errore.
Gruppi di opzioni: FD,SOCKET,NAMED,RETRY,UNIX
) Opzioni utili: bind
Vedi anche: UNIX-LISTEN, UNIX-SENDTO, TCP

UNIX-ASCOLTA:
Ascolta su utilizzando un socket di flusso di dominio UNIX e accetta una connessione.
Se esiste e non è un socket, questo è un errore. Se esiste
ed è un socket di dominio UNIX, il collegamento all'indirizzo fallisce (usare l'opzione
scollegare-in anticipo!). Nota che l'apertura di questo indirizzo di solito si blocca fino a quando un cliente
si connette. A partire dalla versione socat 1.4.3, la voce del file system viene rimossa
quando questo indirizzo è chiuso (ma vedi l'opzione unlink-close) (esempio).
Gruppi di opzioni: FD,SOCKET,NAMED,LISTEN,BAMBINO,RETRY,UNIX
Opzioni utili: fork, umask, mode, user, group, unlink-early
Vedi anche: UNIX-CONNECT, UNIX-RECVFROM, UNIX-RECV, TCP-LISTEN

UNIX-SENDTO:
Comunica con il socket peer specificato, definito da [ ] ammesso che lo sia
un socket datagramma di dominio UNIX. Invia e riceve pacchetti da esso
solo socket peer. Si prega di notare che potrebbe essere necessario associare il socket locale
a un indirizzo (es. /tmp/sock1, che non deve esistere prima). Questo tipo di indirizzo
funziona bene con i peer di indirizzi socat UNIX-RECVFROM e UNIX-RECV.
Gruppi di opzioni: FD,SOCKET,NAMED,UNIX
Opzioni utili: bind
Vedi anche: UNIX-RECVFROM, UNIX-RECV, UNIX-CONNECT, UDP-SENDTO, IP-SENDTO

UNIX-RECVDA:
Crea un socket datagramma di dominio UNIX [ ]. Riceve un pacchetto e può
inviare uno o più pacchetti di risposta a quel peer. Questa modalità è particolarmente utile
con l'opzione fork in cui ogni pacchetto in arrivo - da peer arbitrari - è gestito da
proprio sottoprocesso. Questo indirizzo funziona bene con i peer di indirizzi socat UNIX-SENDTO.
Gruppi di opzioni: FD,SOCKET,NAMED,CHILD,UNIX
Opzioni utili: forchetta
Vedi anche: UNIX-SENDTO, UNIX-RECV, UNIX-LISTEN, UDP-RECVFROM, IP-RECVFROM

UNIX-RECV:
Crea un socket datagramma di dominio UNIX [ ]. Riceve pacchetti da più
peer non specificati e unisce i dati. Non sono possibili risposte. Può essere, ad es.
indirizzato dai peer di indirizzi socat UNIX-SENDTO. Si comporta in modo simile a un syslog
server. Gruppi di opzioni: FD,SOCKET,NAMED,UNIX
Vedi anche: UNIX-SENDTO, UNIX-RECVFROM, UNIX-LISTEN, UDP-RECV, IP-RECV

UNIX-CLIENTE:
Comunica con il socket peer specificato, definito da [ ] ammesso che lo sia
un socket di dominio UNIX. Prima prova a connettersi e, se fallisce, presuppone che lo sia
un datagram socket, supportando così entrambi i tipi.
Gruppi di opzioni: FD,SOCKET,NAMED,UNIX
Opzioni utili: bind
Vedi anche: UNIX-CONNECT, UNIX-SENDTO, GOPEN

ABSTRACT-CONNECT:

ASTRATTO-ASCOLTA:

ABSTRACT-SENDTO:

ABSTRACT-RECVDA:

ASTRATTO-RECV:

ASTRATTO-CLIENTE:
Gli indirizzi ABSTRACT sono quasi identici ai relativi indirizzi UNIX tranne
che non si rivolgono a socket basati su file system ma a un dominio UNIX alternativo
spazio degli indirizzi. Per ottenere ciò, le stringhe dell'indirizzo del socket sono precedute da "\0"
internamente. Questa funzione è disponibile (solo?) su Linux. I gruppi di opzioni sono gli stessi
come con i relativi indirizzi UNIX, salvo che gli indirizzi ABSTRACT non lo sono
membro del gruppo NOMINATO.

INDIRIZZO VERSIONI


Le opzioni di indirizzo possono essere applicate per indirizzare le specifiche per influenzare il processo di
aprendo gli indirizzi e le proprietà dei canali dati risultanti.

Per motivi tecnici non tutte le opzioni possono essere applicate a tutti i tipi di indirizzo; per esempio,
l'applicazione di un'opzione socket a un file normale avrà esito negativo. Per catturare le combinazioni più inutili
già nella fase aperta, il concetto di opzione gruppi è stato presentato. Ogni opzione
appartiene a uno o più gruppi di opzioni. Le opzioni possono essere utilizzate solo con i tipi di indirizzo che
supportano almeno uno dei loro gruppi di opzioni (ma vedere l'opzione -g).

Le opzioni dell'indirizzo hanno tipi di dati a cui devono essere conformi i loro valori. Ogni opzione di indirizzo
consiste solo di una parola chiave o di una parola chiave seguita da "=valore", dove il valore deve essere conforme a
il tipo di opzioni. Alcune opzioni di indirizzo manipolano i parametri delle chiamate di sistema; per esempio,
l'opzione sync imposta il flag O_SYNC con la chiamata open(). Altre opzioni causano un sistema o
chiamata in biblioteca; ad esempio, con l'opzione `ttl=value' il setsockopt(fd, SOL_IP, IP_TTL, value,
viene applicata la chiamata sizeof(int)). Altre opzioni impostate internamente scioccato variabili che vengono utilizzate
durante il trasferimento dei dati; ad esempio, `crnl' provoca conversioni di caratteri esplicite. Alcune opzioni
avere implementazioni più complesse; ad esempio, su-d (substuser-delayed) richiede un utente e
raggruppa le informazioni, le memorizza e le applica in seguito dopo una possibile chiamata chroot().

Se vengono date più opzioni a un indirizzo, la loro sequenza nella specifica dell'indirizzo
non ha (quasi) alcun effetto sulla sequenza della loro esecuzione/applicazione. Anziché, scioccato ha
costruito in un opzione fase modello che cerca di portare le opzioni in un ordine utile. Alcuni
esistono opzioni in diverse forme (ad es. scollegare, scollegare in anticipo, scollegare in ritardo) per controllare il
momento della loro esecuzione.

Se la stessa opzione viene specificata più di una volta all'interno di una specifica di indirizzo, con
valori uguali o diversi, l'effetto dipende dal tipo di opzione. Opzioni risultanti in
chiamate di funzione come setsockopt() causano più chiamate. Con le opzioni che impostano
parametri per una chiamata richiesta come open() o set di flag interni, il valore dell'ultimo
l'occorrenza dell'opzione è efficace.

L'esistenza o la semantica di molte opzioni dipendono dal sistema. Socat di solito NON lo fa
prova a emulare le funzionalità mancanti della libc o del kernel, fornisce solo un'interfaccia per il
sistema sottostante. Quindi, se un sistema operativo manca di una funzionalità, l'opzione correlata è
semplicemente non disponibile su questa piattaforma.

I paragrafi seguenti introducono solo le opzioni di indirizzo più comuni. Per di più
riferimento completo e per trovare informazioni su nomi di opzioni canoniche, nomi di alias,
le fasi delle opzioni e le piattaforme vedono il file xio.help.

FD opzione gruppo

Questo gruppo di opzioni contiene opzioni che vengono applicate a un descrittore di file di stile UN*X, no
importa come è stato generato. Perché tutto attuale scioccato i tipi di indirizzo sono descrittori di file
base, queste opzioni possono essere applicate a qualsiasi indirizzo.
Nota: alcune di queste opzioni sono anche membri di un altro gruppo di opzioni, che fornisce
un altro meccanismo non basato su fd. Per queste opzioni, dipende dal tipo di indirizzo effettivo
e i suoi gruppi di opzioni quale meccanismo viene utilizzato. Il secondo meccanismo non basato su fd è
prioritario.

cloexec=
Imposta il flag FD_CLOEXEC con la chiamata di sistema fcntl() su value . Se impostato, il
il descrittore di file viene chiuso durante le chiamate alle funzioni della famiglia exec(). Socat maniglie interne
questo flag per gli fds che controlla, quindi nella maggior parte dei casi non sarà necessario applicarlo
questa opzione

setk Tenta di impostare un blocco di scrittura discrezionale sull'intero file utilizzando fcntl(fd,
F_SETLK, ...) chiamata di sistema. Se il file è già bloccato, questa chiamata risulta in un
errore. Su Linux, quando i permessi dei file per il gruppo sono "S" (gx,g+s) e il
il file system è montato localmente con l'opzione "mand", il blocco è obbligatorio, ad es
impedisce ad altri processi di aprire il file.

setlkw Tenta di impostare un blocco di scrittura in attesa discrezionale per l'intero file utilizzando il
fcntl(fd, F_SETLKW, ...) chiamata di sistema. Se il file è già bloccato, questa chiamata
blocchi. Vedere l'opzione setlk per informazioni su come rendere obbligatorio questo blocco.

setlk-rd
Tenta di impostare un blocco di lettura discrezionale per l'intero file utilizzando fcntl(fd,
F_SETLK, ...) chiamata di sistema. Se il file è già bloccato in scrittura, questa chiamata risulta
in un errore. Vedere l'opzione setlk per informazioni su come rendere obbligatorio questo blocco.

setlkw-rd
Tenta di impostare un blocco di lettura in attesa discrezionale per l'intero file utilizzando il pulsante
fcntl(fd, F_SETLKW, ...) chiamata di sistema. Se il file è già bloccato in scrittura, questo
blocchi di chiamata. Vedere l'opzione setlk per informazioni su come rendere obbligatorio questo blocco.

gregge-ex
Tenta di impostare un blocco consultivo esclusivo di blocco sul file utilizzando il file flock(fd,
LOCK_EX) chiamata di sistema. Socat si blocca in questa chiamata se il file è bloccato da un altro
processo.

gregge-ex-nb
Tenta di impostare un blocco consultivo esclusivo non bloccante per il file usando il flock(fd,
LOCK_EX|LOCK_NB) chiamata di sistema. Se il file è già bloccato, questa opzione risulta in
un errore.

gregge-sh
Tenta di impostare un blocco di avviso condiviso bloccante sul file utilizzando il file flock(fd,
LOCK_SH) chiamata di sistema. Socat si blocca in questa chiamata se il file è bloccato da un altro
processo.

gregge-sh-nb
Tenta di impostare un blocco consultivo condiviso non bloccante sul file utilizzando il file flock(fd,
LOCK_SH|LOCK_NB) chiamata di sistema. Se il file è già bloccato, questa opzione risulta in
un errore.

bloccare Imposta un blocco di blocco sul file. Utilizza il meccanismo setlk o flock a seconda di
disponibilità sulla piattaforma specifica. Se entrambi sono disponibili, la variante POSIX
(setlkw) viene utilizzato.

utente=
Imposta il (proprietario) del flusso. Se l'indirizzo è membro del NAMED
gruppo di opzioni, scioccato usa la chiamata di sistema chown() dopo aver aperto il file o associato
al socket del dominio UNIX (condizione di gara!). Senza voce nel filesystem, scioccato set
l'utente del flusso utilizzando la chiamata di sistema fchown(). Queste chiamate potrebbero richiedere
privilegio di root.

user-late=
Imposta il proprietario dell'fd su con la chiamata di sistema fchown() dopo l'apertura o
collegamento del canale. Questo è utile solo per le voci del file system.

gruppo=
Imposta il del torrente. Se l'indirizzo è membro dell'opzione NAMED
gruppo, scioccato usa la chiamata di sistema chown() dopo aver aperto il file o vincolato al
Socket di dominio UNIX (condizione di gara!). Senza voce nel filesystem, scioccato imposta il
gruppo del flusso con la chiamata di sistema fchown(). Queste chiamate potrebbero richiedere un gruppo
appartenenza o privilegio di root.

group-late=
Imposta il gruppo di fd su con la chiamata di sistema fchown() dopo l'apertura o
collegamento del canale. Questo è utile solo per le voci del file system.

modalità=
Imposta il [mode_t] (permessi) del flusso. Se l'indirizzo è membro di
il gruppo di opzioni NAMED e usa la chiamata open() o creat(), la modalità viene applicata
con questi. Se l'indirizzo è membro del gruppo di opzioni NAMED senza utilizzarli
chiamate di sistema, scioccato usa la chiamata di sistema chmod() dopo aver aperto la voce del filesystem
o associazione al socket del dominio UNIX (condizione di gara!). Altrimenti, scioccato imposta il
modalità del flusso utilizzando fchmod() . Queste chiamate potrebbero richiedere la proprietà o il root
privilegio.

perm-late=
Imposta i permessi di fd su value [mode_t] usando il sistema fchmod()
chiamare dopo aver aperto o connesso il canale. Questo è utile solo sul file system
le voci.

append=
Scrive sempre i dati alla fine effettiva del file. Se l'indirizzo è membro dell'OPEN
gruppo di opzioni, scioccato usa il flag O_APPEND con la chiamata di sistema open() (esempio).
Altrimenti, scioccato applica la chiamata fcntl(fd, F_SETFL, O_APPEND).

nonblock=
Tenta di aprire o utilizzare il file in modalità non bloccante. I suoi unici effetti sono che il
connect() chiamata di indirizzi TCP non si blocca e l'apertura di una named pipe per
la lettura non si blocca. Se l'indirizzo è membro del gruppo di opzioni OPEN, scioccato
usa il flag O_NONBLOCK con la chiamata di sistema open(). Altrimenti, scioccato applica il
fcntl(fd, F_SETFL, O_NONBLOCK) chiamata.

binario Apre il file in modalità binaria per evitare conversioni implicite del terminatore di riga
(Cigwin).

testo Apre il file in modalità testo per forzare le conversioni implicite dei terminatori di riga (Cygwin).

non ereditare
Non mantiene questo file aperto in un processo generato (Cygwin).

bella scrittura
Semplifica quando la scrittura fallisce con EPIPE o ECONNRESET e registra il messaggio con
bacheca livello invece di errore. Ciò impedisce che il file di registro venga riempito con
messaggi di errore inutili quando socat viene utilizzato come server o proxy ad alto volume dove
i client spesso interrompono la connessione.
Questa opzione è sperimentale.

fine-chiudi
Cambia il metodo (dipendente dall'indirizzo) di terminare una connessione per chiudere semplicemente il
descrittori di file. Questo è utile quando la connessione deve essere riutilizzata o condivisa
con altri processi (esempio).
Normalmente, le connessioni socket verranno terminate con chiusura(2) che termina il
socket anche se è condiviso da più processi. close(2) "scollega" la presa
dal processo ma lo mantiene attivo finché ci sono ancora collegamenti da altri
processi.
Allo stesso modo, quando viene terminato un indirizzo di tipo EXEC o SYSTEM, socat di solito lo farà
terminare esplicitamente il processo secondario. Con questa opzione, chiuderà semplicemente il file
descrittori.

chiudi nessuno
Modifica il metodo (dipendente dall'indirizzo) per chiudere la parte di scrittura di a
connessione per non fare nulla.

Spegnimento
Modifica il metodo (dipendente dall'indirizzo) per chiudere la parte di scrittura di a
connessione allo spegnimento\(fd, SHUT_WR). È utile solo con le prese.

chiudi-chiudi
Modifica il metodo (dipendente dall'indirizzo) per chiudere la parte di scrittura di a
connessione da chiudere\(fd).

chiuso-nullo
Quando un indirizzo indica EOF, scioccato invierà un pacchetto di dimensioni zero alla scrittura
canale dell'altro indirizzo per trasferire la condizione EOF. Questo è utile con UDP
e altri protocolli di datagramma. È stato testato contro netcat e socat con opzione
nullo.

nullo
Normalmente scioccato ignorerà i pacchetti vuoti (payload di dimensione zero) che arrivano sul datagramma
socket, quindi sopravvive alle scansioni delle porte. Con questa opzione scioccato interpreta vuoto
pacchetti di datagrammi come indicatore EOF (vedi Shut-null).

ioctl-void=
Chiama ioctl() con il valore della richiesta come secondo argomento e NULL come terzo argomento.
Questa opzione consente di utilizzare ioctls che non sono implementati esplicitamente in socat.

ioctl-int= :
Chiama ioctl() con il valore della richiesta come secondo argomento e il valore intero come
terzo argomento.

ioctl-intp= :
Chiama ioctl() con il valore della richiesta come secondo argomento e un puntatore a
valore intero come terzo argomento.

ioctl-bin= :
Chiama ioctl() con il valore della richiesta come secondo argomento e un puntatore al dato
valore dei dati come terzo argomento. Questi dati devono essere specificati in modulo.

ioctl-string= :
Chiama ioctl() con il valore della richiesta come secondo argomento e un puntatore al dato
stringa come terzo argomento. modulo.

DI NOME opzione gruppo

Queste opzioni funzionano sulle voci del file system.
Vedere anche le opzioni utente, gruppo e modalità.

user-early=
Cambia il (proprietario) della voce del file system prima di accedervi, utilizzando il pulsante
chiamata di sistema chown(). Questa chiamata potrebbe richiedere il privilegio di root.

gruppo-presto=
Cambia il della voce del file system prima di accedervi, utilizzando chown()
chiamata di sistema. Questa chiamata potrebbe richiedere l'appartenenza al gruppo o il privilegio di root.

perm-precoce=
Cambia il [mode_t] della voce del file system prima di accedervi, utilizzando il tasto
chiamata di sistema chmod(). Questa chiamata potrebbe richiedere la proprietà o il privilegio di root.

umask=
Imposta l'umask del processo su [mode_t] prima di accedere al file system
(utile con i socket di dominio UNIX!). Questa chiamata potrebbe influire ulteriormente su tutto
operazioni del scioccato processi!

scollegare-in anticipo
Scollega (rimuove) il file prima di aprirlo e anche prima di applicare l'utente in anticipo
ecc.

scollegare Scollega (rimuove) il file prima di accedervi, ma dopo l'utente in anticipo ecc.

scollegamento in ritardo
Scollega (rimuove) il file dopo averlo aperto per renderlo inaccessibile ad altri
processi dopo una breve race condition.

scollega-chiudi
Rimuove la voce del file system degli indirizzi alla chiusura dell'indirizzo. Per i tubi denominati,
socket di dominio unix in ascolto e i collegamenti simbolici degli indirizzi pty, l'impostazione predefinita
è 1; per file creati, file aperti, file generici aperti e dominio unix client
socket il valore predefinito è 0.

APERTO opzione gruppo

Le opzioni del gruppo OPEN consentono di impostare flag con la chiamata di sistema open(). Ad esempio, opzione
`creat' imposta il flag O_CREAT.
Vedere anche le opzioni append e nonblock.

creat=
Crea il file se non esiste (esempio).

dsync=
Blocca le chiamate write() fino a quando le metainfo non vengono scritte fisicamente sul supporto.

escl=
Con l'opzione creat, se il file esiste questo è un errore.

largefile=
Su sistemi a 32 bit, consente un file più grande di 2^31 byte.

noatime
Imposta le opzioni O_NOATIME, quindi le letture non modificano il timestamp di accesso.

nottty=
Non rende questo file il terminale di controllo.

nofollow=
Non segue i link simbolici.

nshare=
Non consente di condividere questo file con altri processi.

rshare=
Non consente ad altri processi di aprire questo file per la scrittura.

rsync=
Blocca write() finché le metainfo non vengono scritte fisicamente sul supporto.

sincronizzazione=
Blocca write() finché i dati non vengono scritti fisicamente sul supporto.

rdonly=
Apre il file in sola lettura.

erroneamente=
Apre il file solo per la scrittura.

tronca Tronca il file alla dimensione 0 durante l'apertura.

REG ed BLK opzione gruppo

Queste opzioni sono solitamente applicate a un descrittore di file UN*X, ma la loro semantica rende
senso solo su un file che supporta l'accesso casuale.

cercare=
Applica lseek(fd, , SEEK_SET) (o lseek64 ) chiamata di sistema, quindi
posizionando il puntatore del file assolutamente su [off_t o off64_t]. notare che
che un valore mancante per impostazione predefinita è 1, non 0.

cercare-cur=
Applica lseek(fd, , SEEK_CUR) (o lseek64 ) chiamata di sistema, quindi
posizionare il puntatore del file [off_t o off64_t] byte relativamente ai suoi
posizione corrente (che di solito è 0). Si prega di notare che un valore mancante per impostazione predefinita è
1, non 0.

cerca-fine=
Applica lseek(fd, , SEEK_END) (o lseek64 ) chiamata di sistema, quindi
posizionare il puntatore del file [off_t o off64_t] byte relativamente al
fine corrente dei file. Tieni presente che un valore mancante è predefinito su 1, non su 0.

ftruncate=
Applica la ftruncate(fd, ) (o ftruncate64 se disponibile) chiamata di sistema, quindi
troncando il file nella posizione [off_t o off64_t]. Si prega di notare che a
il valore mancante è di default 1, non 0.

secrm=

unrm=

compr=

ext2-sync=

immutabile=

ext2-append=

nodump=

ext2-noatime=

journal-data=

notil=

dirsync=
Queste opzioni modificano gli attributi di file non standard su sistemi operativi e file
sistemi che supportano queste funzionalità, come Linux con ext2fs, ext3fs o reiserfs.
Vedi man 1 chattr per informazioni su queste opzioni. Si prega di notare che potrebbe esserci
una race condition tra la creazione del file e l'applicazione di queste opzioni.

PROCESSO opzione gruppo

Le opzioni di questo gruppo modificano le proprietà del processo invece di influenzare solo un dato
canale. Per indirizzi EXEC e SYSTEM e per indirizzi di tipo LISTEN e CONNECT con
opzione FORK, queste opzioni si applicano ai processi figlio invece che al processo socat principale.

chroot=
Esegue un'operazione chroot() per dopo aver elaborato l'indirizzo
(esempio). Questa chiamata potrebbe richiedere il privilegio di root.

chroot-early=
Esegue un'operazione chroot() per prima di aprire l'indirizzo. questa chiamata
potrebbe richiedere il privilegio di root.

setgid=
Cambia il primario del processo dopo aver elaborato l'indirizzo. questa chiamata
potrebbe richiedere il privilegio di root. Si prega di notare che questa opzione non ne lascia cadere altre
privilegi relativi al gruppo.

setgid-early=
Come setgit ma viene eseguito prima di aprire l'indirizzo.

setuid=
Cambia il (titolare) del trattamento dopo aver elaborato l'indirizzo. questa chiamata
potrebbe richiedere il privilegio di root. Si prega di notare che questa opzione non elimina il gruppo
relativi privilegi. Controlla se l'opzione su si adatta meglio alle tue esigenze.

setuid-early=
Come setuid ma viene eseguito prima di aprire l'indirizzo.

su=
Cambia il (titolare) e gruppi del trattamento dopo aver elaborato l'indirizzo
(esempio). Questa chiamata potrebbe richiedere il privilegio di root.

su-d=
Nome abbreviato per substuser-delayed. Cambia il (proprietario) e gruppi di
processo dopo l'elaborazione dell'indirizzo (esempio). L'utente e i suoi gruppi sono
recuperato prima un possibile chroot() . Questa chiamata potrebbe richiedere il privilegio di root.

setpgid=
Rende il processo un membro del gruppo di processi specificato . Se nessun valore è
dato, o se il valore è 0 o 1, il processo diventa capofila di un nuovo processo
gruppo.

setid Rende il processo il leader di una nuova sessione (esempio).

LINEA DI LETTURA opzione gruppo

A causa delle restrizioni sulla licenza, la funzione readline è disabilitata in Debian (vedi BUG).
Queste opzioni si applicano al tipo di indirizzo readline.

storia=
Legge e scrive la cronologia da/a (esempio).

senza preavviso
Dalla versione 1.4.0, socat per impostazione predefinita cerca di determinare un prompt, ovvero allora
passato alla chiamata readline - ricordando l'ultima riga incompleta del
produzione. Con questa opzione, socat non passa un prompt a readline, quindi inizia
modifica della riga nella prima colonna del terminale.

noecho=
Specifica un modello regolare per un prompt che impedisce la seguente riga di input
dall'essere visualizzato sullo schermo e dall'essere aggiunto alla cronologia. Il prompt
è definito come il testo che è stato inviato all'indirizzo readline dopo l'ultimo
carattere di nuova riga e prima che sia stato digitato un carattere di input. Il modello è regolare
espressione, ad esempio "^[Pp]assword:.*$" o "([Uu]ser:|[Pp]assword:)". Vedi espressione regolare\(7)
per dettagli. (esempio)

prompt=
Passa la stringa come prompt alla funzione readline. readline stampa questo prompt
quando si attraversa la storia. Se questa stringa corrisponde a un prompt costante emesso
da un programma interattivo sull'altro indirizzo socat, aspetto coerente può
essere archiviato.

APPLICAZIONI opzione gruppo

Questo gruppo contiene opzioni che funzionano a livello di dati. Nota che queste opzioni si applicano solo
ai dati "grezzi" trasferiti da socat, ma non ai dati di protocollo utilizzati da indirizzi come
DELEGATO.

cr Converte il carattere di terminazione della riga predefinito NL ('\n', 0x0a) in/da CR ('\r',
0x0d) durante la scrittura/lettura su questo canale.

crnl Converte il carattere di terminazione della riga predefinito NL ('\n', 0x0a) in/da CRNL
("\r\n", 0x0d0a) durante la scrittura/lettura su questo canale (esempio). Nota: socat
rimuove semplicemente tutti i caratteri CR.

ignorare
Quando si verifica EOF su questo canale, scioccato lo ignora e prova a leggere più dati (come
"tail -f") (esempio).

readbytes=
scioccato legge solo tanti byte da questo indirizzo (l'indirizzo fornisce solo tanti
byte per il trasferimento e finge di essere in seguito a EOF). Deve essere maggiore di 0.

lockfile=
Se il file di blocco esiste, esce con errore. Se il file di blocco non esiste, lo crea e
continua, scollega il file di blocco all'uscita.

waitlock=
Se il file di blocco esiste, attende finché non scompare. Quando il file di blocco non esiste,
lo crea e continua, scollega il file di blocco all'uscita.

fuga=
Specifica il codice numerico di un carattere che attiva EOF nel flusso di input. Esso
è utile con un terminale in modalità raw (esempio).

PRESA opzione gruppo

Queste opzioni sono destinate a tutti i tipi di socket, ad esempio IP o dominio UNIX. La maggior parte sono
applicato con una chiamata setsockopt().

legare=
Associa il socket all'indirizzo del socket specificato utilizzando la chiamata di sistema bind(). Il modulo
di dipende dal dominio del socket: IP4 e IP6 consentono il modulo
[hostname|hostaddress][:(service|port)] (esempio), i socket di dominio UNIX richiedono
.

connessione-timeout=
Interrompi il tentativo di connessione dopo [timeval] con stato di errore.

so-bindtodevice=
Associa il socket al dato . Questa opzione potrebbe richiedere root
privilegio.

BROADCAST
Per socket datagram, consente l'invio a indirizzi broadcast e la ricezione di pacchetti
indirizzato a indirizzi broadcast.

mettere a punto Abilita il debug del socket.

dontrout
Comunica solo con peer connessi direttamente, non utilizza router.

keepalive
Abilita l'invio di keepalive sul socket.

indugiare=
Blocca lo spegnimento() o la chiusura() fino al termine dei trasferimenti di dati o fino al termine
timeout [int] scaduto.

oobinline
Inserisce i dati fuori banda nel flusso di dati di input.

priorità=
Imposta il protocollo definito [ ] per i pacchetti in uscita.

rcvbuf=
Imposta la dimensione del buffer di ricezione dopo la chiamata socket() a [int]. Con
Socket TCP, questo valore corrisponde alla dimensione massima della finestra del socket.

rcvbuf-late=
Imposta la dimensione del buffer di ricezione quando il socket è già connesso a
[int]. Con i socket TCP, questo valore corrisponde alla finestra massima del socket
dimensione.

rcvlowat=
Specifica il numero minimo di byte ricevuti [int] fino a quando il layer socket lo farà
passare i dati bufferizzati a scioccato.

rcvtimeo=
Imposta il timeout di ricezione [timeval].

riutilizzare dr
Consente ad altri socket di collegarsi a un indirizzo anche se parte di esso (es
port) sono già in uso da scioccato (esempio).

sndbuf=
Imposta la dimensione del buffer di invio dopo la chiamata socket() a [int].

sndbuf-late=
Imposta la dimensione del buffer di invio quando il socket è collegato a [int].

sndlowat=
Specifica il numero minimo di byte nel buffer di invio fino al livello socket
invierà i dati a [int].

sndtimeo=
Imposta il timeout di invio su secondi [timeval].

pf=
Forza l'uso della versione o del protocollo IP specificato. può essere qualcosa
come "ip4" o "ip6". Il valore risultante viene utilizzato come primo argomento del socket()
o chiamate socketpair(). Questa opzione influisce sulla risoluzione dell'indirizzo e sulla richiesta
sintassi delle opzioni bind e range.

tipo=
Imposta il tipo del socket, specificato come secondo argomento del socket() o
socketpair() chiama, a [int]. La risoluzione dell'indirizzo non è influenzata da questo
opzione. Sotto Linux, 1 significa socket orientato al flusso, 2 significa socket datagram e
3 significa presa grezza.

prototipo
Imposta il protocollo del socket, specificato come terzo argomento del socket() o
socketpair() chiama, a [int]. La risoluzione dell'indirizzo non è influenzata da
questa opzione. 6 significa TCP, 17 significa UDP.

così-timestamp
Imposta l'opzione socket SO_TIMESTAMP. Ciò consente la ricezione e la registrazione di
messaggi ausiliari di marca temporale.

setsockopt-int= : :
Richiama setsockopt() per il socket con i parametri indicati. si usa livello [int]
come secondo argomento di setsockopt() e specifica il livello, ad es. SOL_TCP per TCP (6
su Linux) o SOL_SOCKET per il livello socket (1 su Linux). optname [int] è il
terzo argomento a setsockopt() e indica quale opzione socket deve essere impostata. Per il
numeri effettivi potresti dover cercare i file di inclusione appropriati del tuo
sistema. Il 4° parametro setsockopt(), valore [int], viene passato alla funzione per
puntatore, e per il parametro di lunghezza sizeof\(int) viene preso implicitamente.

setsockopt-bin= : :
Come setsockopt-int, ma deve essere fornito in formato dalan e specifica an
sequenza arbitraria di byte; il parametro di lunghezza è derivato automaticamente da
dati.

setsockopt-string= : :
Come setsockopt-int, ma deve essere una stringa. Questa stringa viene passata al
funzione con carattere null finale e il parametro di lunghezza viene automaticamente
derivato dai dati.

UNIX opzione gruppo

Queste opzioni si applicano agli indirizzi basati su dominio UNIX.

unix-calzino=[0|1]
Nelle operazioni sui socket, passa una lunghezza dell'indirizzo del socket che non include l'intero
struct sockaddr_un record ma (oltre ad altri componenti) solo la parte rilevante di
il nome del file o la stringa astratta. Il valore predefinito è 1.

IP4 ed IP6 opzione gruppi

Queste opzioni possono essere utilizzate con socket basati su IPv4 e IPv6.

tos=
Imposta il campo TOS (tipo di servizio) dei pacchetti in uscita su [byte] (vedi RFC
791).

ttl=
Imposta il campo TTL (time to live) dei pacchetti in uscita su [byte].

ip-opzioni=
Imposta le opzioni IP come il routing di origine. Deve essere fornito in forma binaria, consigliato
Il formato è una "x" iniziale seguita da un numero pari di cifre esadecimali. Questa opzione potrebbe
essere utilizzato più volte, i dati vengono aggiunti. Ad esempio, per connettersi all'host 10.0.0.1 tramite
alcuni gateway che utilizzano un percorso sorgente libero, utilizzare il gateway come parametro dell'indirizzo e
imposta un percorso di origine libero utilizzando l'opzione ip-options=x8307040a000001 .
Le opzioni IP sono definite nella RFC 791.

mtdiscover=<0|1|2>
Richiede 0, 1, 2 per mai, volere o utilizzare sempre il percorso MTU discovery su questo socket.

ip-pktinfo
Imposta l'opzione socket IP_PKTINFO. Ciò consente la ricezione e la registrazione di servizi ausiliari
messaggi contenenti indirizzo di destinazione e interfaccia (Linux) (esempio).

ip-reverr
Imposta l'opzione socket IP_RECVERR. Ciò consente la ricezione e la registrazione di servizi ausiliari
messaggi contenenti informazioni dettagliate sull'errore.

ip-recvopts
Imposta l'opzione socket IP_RECVOPTS. Ciò consente la ricezione e la registrazione dell'IP
opzioni messaggi ausiliari (Linux, *BSD).

ip-recvtos
Imposta l'opzione socket IP_RECVTOS. Ciò consente la ricezione e la registrazione di TOS (tipo
di servizio) messaggi ausiliari (Linux).

ip-revttl
Imposta l'opzione socket IP_RECVTTL. Ciò consente la ricezione e la registrazione di TTL (time
per vivere) messaggi ausiliari (Linux, *BSD).

ip-recvdstaddr
Imposta l'opzione socket IP_RECVDSTADDR. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti l'indirizzo di destinazione (*BSD) (esempio).

ip-recvif
Imposta l'opzione socket IP_RECVIF. Ciò consente la ricezione e la registrazione dell'interfaccia
messaggi ausiliari (*BSD) (esempio).

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=
Rende il membro socket del gruppo multicast specificato. Questo è attualmente solo
implementato per IPv4. L'opzione prende l'indirizzo IP del gruppo multicast e
informazioni sull'interfaccia di rete desiderata. La sintassi più comune è la prima,
mentre gli altri sono disponibili solo su sistemi che forniscono struct mreqn (Linux).
Gli indici delle interfacce di rete attive possono essere visualizzati utilizzando l'utility procano.

ip-multicast-if=
Specifica il nome host o l'indirizzo dell'interfaccia di rete da utilizzare per il multicast
traffico.

ip-multicast-loop=
Specifica se il traffico multicast in uscita deve tornare all'interfaccia.

ip-multicast-ttl=
Imposta il TTL utilizzato per il traffico multicast in uscita. Il valore predefinito è 1.

ris-debug

res-aasolo

res-usevc

res-primario

res-signtc

re-ricorrenza

res-defnames

res-rimani aperto

res-dnsrch
Queste opzioni impostano i flag dell'opzione resolver (risoluzione dei nomi) corrispondenti.
Aggiungi "=0" per cancellare un'opzione predefinita. Vedi man resolver\(5) per maggiori informazioni su
queste opzioni. Nota: queste opzioni sono valide solo per l'indirizzo a cui sono applicate
a.

IP6 opzione gruppo

Queste opzioni possono essere utilizzate solo su socket basati su IPv6. Vedi le opzioni IP per le opzioni che possono
essere applicato sia ai socket IPv4 che IPv6.

ipv6only=
Imposta l'opzione socket IPV6_V6ONLY. Se 0, accetterà anche lo stack TCP
connessioni utilizzando il protocollo IPv4 sulla stessa porta. L'impostazione predefinita dipende dal sistema.

ipv6-recvdstopts
Imposta l'opzione socket IPV6_RECVDSTOPTS. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti le opzioni di destinazione.

ipv6-recvhoplimit
Imposta l'opzione socket IPV6_RECVHOPLIMIT. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti l'hoplimit.

ipv6-recvhopopts
Imposta l'opzione socket IPV6_RECVHOPOPTS. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti le opzioni di hop.

ipv6-recvpktinfo
Imposta l'opzione socket IPV6_RECVPKTINFO. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti indirizzo di destinazione e interfaccia.

ipv6-unicast-hops=link(TYPE_INT)( )
Imposta l'opzione socket IPV6_UNICAST_HOPS. Questo imposta il limite di conteggio hop (TTL) per
pacchetti unicast in uscita.

ipv6-recvrthdr
Imposta l'opzione socket IPV6_RECVRTHDR. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti informazioni di instradamento.

ipv6-tclass
Imposta l'opzione socket IPV6_TCLASS. Questo imposta la classe di trasferimento in uscita
pacchetti.

ipv6-recvtclass
Imposta l'opzione socket IPV6_RECVTCLASS. Ciò consente la ricezione e la registrazione di
messaggi ausiliari contenenti la classe di trasferimento.

TCP opzione gruppo

Queste opzioni possono essere applicate ai socket TCP. Funzionano invocando setsockopt() con il
parametri appropriati.

sughero Non invia pacchetti più piccoli di MSS (dimensione massima del segmento).

differire-accettare
Durante l'ascolto, accetta le connessioni solo quando sono arrivati ​​i dati dal peer.

keepcnt=
Imposta il numero di keepalive prima di spegnere la presa su [int].

tenere inattivo=
Imposta il tempo di inattività prima di inviare il primo keepalive a [int].

keepintvl=
Imposta l'intervallo tra due keepalive su [int].

indugiare2=
Imposta il tempo per mantenere la presa nello stato FIN-WAIT-2 a [int].

mss=
Imposta l'MSS (dimensione massima del segmento) dopo la chiamata socket() a [int]. Questo
il valore viene quindi proposto al peer con il pacchetto SYN o SYN/ACK (esempio).

mss-late=
Imposta l'MSS della presa dopo che è stata stabilita la connessione a [int].

nessun ritardo
Disattiva l'algoritmo Nagle per la misurazione dell'RTT (tempo di andata e ritorno).

rfc1323
Abilita le opzioni TCP RFC1323: scala della finestra TCP, misurazione del tempo di andata e ritorno (RTTM),
e protegge dai numeri di sequenza avvolti (PAWS) (AIX).

stdurg Abilita la gestione dei puntatori urgenti (AIX) conforme a RFC1122.

sincrono=
Imposta il numero massimo di ritrasmissioni SYN durante la connessione a [int].

md5sig Consente la generazione di digest MD5 sui pacchetti (FreeBSD).

noopt Disabilita l'uso delle opzioni TCP (FreeBSD, MacOSX).

no push imposta l'opzione socket TCP_NOPUSH (FreeBSD, MacOSX).

sack-disabilitare
Disabilita utilizzare la funzione di riconoscimento selettivo (OpenBSD).

abilita la firma
Consente la generazione di digest MD5 sui pacchetti (OpenBSD).

soglia-interruzione=
Imposta il tempo di attesa per una risposta del peer su una connessione stabilita
(HP-UX).

conn-abort-soglia=
Imposta il tempo di attesa per una risposta del server durante la connessione iniziale
(HP-UX).

mantienilo
Imposta il tempo di attesa per una risposta del server durante connect\() prima di dare
su. Valore in mezzo secondo, il valore predefinito è 150 (75s) (Tru64).

zampe Abilita la funzione "protezione contro i numeri di sequenza avvolti" (Tru64).

sacchena
Abilita il riconoscimento selettivo (Tru64).

tsoptena
Abilita l'opzione timestamp che consente il ricalcolo RTT sulle connessioni esistenti
(Tru64).

SCTP opzione gruppo

Queste opzioni possono essere applicate ai socket di flusso SCTP.

sctp-nodelay
Imposta l'opzione socket SCTP_NODELAY che disabilita l'algoritmo Nagle.

sctp-maxseg=
Imposta l'opzione socket SCTP_MAXSEG su [int]. Questo valore viene quindi proposto
al peer con il pacchetto SYN o SYN/ACK.

UDP, TCP, ed SCTP opzione gruppi

Qui troviamo le opzioni relative al meccanismo della porta di rete e quindi possono essere utilizzate
con indirizzi client e server UDP, TCP e SCTP.

sourceport=
Per le connessioni TCP e UDP in uscita (client), imposta la sorgente usando un
chiamata aggiuntiva bind(). Con indirizzi di ascolto TCP o UDP, socat si spegne immediatamente
la connessione se il client non utilizza questa porta di origine (esempio).

porta bassa
Le connessioni TCP e UDP in uscita (client) con questa opzione utilizzano un random non utilizzato
porta sorgente tra 640 e 1023 incl. Sui sistemi operativi di classe UNIX, questo
richiede il privilegio di root e quindi indica che il processo client è autorizzato
per radice locale. Gli indirizzi di ascolto TCP e UDP con questa opzione si spengono immediatamente
la connessione se il client non utilizza un sourceport <= 1023. Questo meccanismo può
fornire un'autorizzazione limitata in alcune circostanze.

SOCKS opzione gruppo

Quando si utilizzano indirizzi di tipo SOCKS, è possibile impostare alcune opzioni specifiche per i calzini.

calzino= servizio>
Sostituisce il servizio "socks" predefinito o la porta 1080 per la porta del server calzini con
.

calzini=
Invia il [stringa] nel campo nome utente al server calzini. L'impostazione predefinita è
nome utente effettivo ($LOGNAME o $USER) (esempio).

HTTP opzione gruppo

Opzioni che possono essere fornite con indirizzi di tipo HTTP. L'unico indirizzo HTTP attualmente
implementato è proxy-connect.

proxyport= servizio>
Sostituisce la porta proxy HTTP predefinita 8080 con .

ignorare
Il protocollo HTTP richiede l'utilizzo di CR+NL come terminatore di riga. Quando un server proxy
viola questo standard, socat potrebbe non capire la sua risposta. Questa opzione dirige
socat per interpretare NL come terminatore di riga e ignorare CR nella risposta.
Tuttavia, socat invia CR+NL al proxy.

proxyauth= :
Fornire l'autenticazione "di base" al server proxy. L'argomento dell'opzione è
utilizzato con un'intestazione "Proxy-Authorization: Base" in formato codificato base64.
Nota: nome utente e password sono visibili per ogni utente sulla macchina locale nel
elenco dei processi; nome utente e password vengono trasferiti al server proxy non crittografati
(codificato in base64) e potrebbe essere sniffato.

risolvere
Per impostazione predefinita, socat invia al proxy una richiesta CONNECT contenente il target
Nome host. Con questa opzione, socat risolve il nome host localmente e invia l'IP
indirizzo. Si noti che, secondo RFC 2396, solo la risoluzione dei nomi su IPv4
indirizzi è implementato.

Consumo opzione gruppo

Queste opzioni controllano se è necessario concedere l'accesso a un client connesso. Possono essere applicati
per ascoltare e ricevere le prese di rete. Le opzioni tcp-wrappers rientrano in questo gruppo.

intervallo=
Dopo aver accettato una connessione, verifica se il peer è all'interno gamma. Per IPv4
indirizzi, l'intervallo di indirizzi assume la forma indirizzo/bit, ad es. 10.0.0.0/8, o
indirizzo:maschera, ad es. 10.0.0.0:255.0.0.0 (esempio); per IPv6, è
[indirizzo ip6/bit], ad es. [::1/128]. Se l'indirizzo del cliente non corrisponde, scioccato
emette un avviso e continua ad ascoltare/ricevere.

tcpwrap[= ]
Utilizza la libreria libwrap (tcpd) di Wietse Venema per determinare se il client è autorizzato
per connettere. I file di configurazione sono /etc/hosts.allow ed /etc/hosts.deny per
predefinito, vedere "man 5 hosts_access" per maggiori informazioni. L'opzionale (genere
string) viene passato alle funzioni wrapper come nome del processo demone (esempio). Se
omesso, viene passato il nome di base dell'invocazione di socats (argv[0]). Se entrambi tcpwrap
e le opzioni di intervallo vengono applicate a un indirizzo, entrambe le condizioni devono essere soddisfatte per
consentire la connessione.

allow-table=
Prende il file specificato invece di /etc/hosts.allow.

nega-tabella=
Prende il file specificato invece di /etc/hosts.deny.

tcpwrap-etc=
Cerca hosts.allow e hosts.deny nella directory specificata. Viene sovrascritto da
opzioni host-allow e hosts-deny.

LISTEN opzione gruppo

Opzioni specifiche per le prese di ascolto.

arretrato=
Imposta il valore del backlog passato con la chiamata di sistema listen() a [int].
L'impostazione predefinita è 5.

max-bambini=
Limita il numero di processi figlio simultanei [int]. L'impostazione predefinita è nessun limite.

BAMBINO opzione gruppo

Opzioni per indirizzi con più connessioni tramite processi figlio.

forcella Dopo aver stabilito una connessione, gestisce il suo canale in un processo figlio e mantiene
il processo genitore che tenta di produrre più connessioni, ascoltando o
collegandosi in loop (esempio).
OPENSSL-CONNECT e OPENSSL-LISTEN differiscono per il momento in cui si separano effettivamente dal bambino:

Forcelle OPENSSL-LISTEN prima l'handshake SSL, mentre OPENSSLSSL-CONNECT esegue il fork
dopo. Le opzioni RETRY e FOREVER non vengono ereditate dal processo figlio.
Su alcuni sistemi operativi (es. FreeBSD) questa opzione non funziona per UDP-LISTEN
indirizzi.

ESEC opzione gruppo

Opzioni per gli indirizzi che richiamano un programma.

percorso=
Sostituisce la variabile d'ambiente PATH per la ricerca del programma con .
Questo valore $PATH è efficace anche nel processo figlio.

accesso Prefisso argv[0] per la chiamata execvp() con '-', in modo che una shell si comporti come
shell di accesso.

FORCELLA opzione gruppo

Gli indirizzi EXEC o SYSTEM richiamano un programma utilizzando un processo figlio e trasferiscono i dati tra
scioccato e il programma. Il meccanismo di comunicazione interprocesso può essere influenzato con
seguenti opzioni. Per impostazione predefinita, viene creato un socketpair() e assegnato a stdin e stdout
del processo figlio, mentre stderr è ereditato da scioccato processo, e il bambino
process utilizza i descrittori di file 0 e 1 per comunicare con il processo socat principale.

nofork Non esegue il fork di un sottoprocesso per l'esecuzione del programma, chiama invece execvp\() o
system\() direttamente dall'effettiva istanza di socat. Questo evita il sovraccarico di
un altro processo tra il programma e il suo peer, ma introduce un sacco di
restrizioni:

o questa opzione può essere applicata solo al secondo scioccato indirizzo.

o non può essere applicato a una parte di un doppio indirizzo.

o il primo indirizzo socat non può essere OPENSSL o READLINE

o le opzioni socat -b, -t, -D, -l, -v, -x diventano inutili

o per entrambi gli indirizzi, le opzioni ignoreeof, cr e crnl diventano inutili

o per il secondo indirizzo (quello con l'opzione nofork), opzioni append, cloexec,
flock, user, group, mode, nonblock, perm-late, setlk e setpgid non possono essere
applicato. Alcuni di questi potrebbero essere usati sul primo indirizzo però.

tubi Crea una coppia di pipe senza nome per la comunicazione tra processi invece di un socket
coppia.

aperto
Stabilisce la comunicazione con il processo secondario utilizzando uno pseudo terminale creato con
openpty() invece del valore predefinito (socketpair o ptmx).

ptx Stabilisce la comunicazione con il processo secondario utilizzando uno pseudo terminale creato da
apertura /dev/ptmx or /dev/ptc invece del valore predefinito (socketpair).

pty Stabilisce la comunicazione con il processo secondario utilizzando uno pseudo terminale invece di a
coppia di prese. Crea il pty con un meccanismo disponibile. Se openpty e ptmx sono
entrambi disponibili, utilizza ptmx perché è conforme a POSIX (esempio).

ctty Rende il pty il tty di controllo del processo secondario (esempio).

stderr Dirige lo stderr del sottoprocesso al suo canale di output rendendo stderr un dup() di
stdout (esempio).

fdin=
Assegna il canale di input dei sottoprocessi al suo descrittore di file invece di
standard (0). Il programma avviato dal sottoprocesso deve usare questo fd per la lettura
dati da scioccato (esempio).

fdout=
Assegna il canale di output dei sottoprocessi al suo descrittore di file invece di
stdout (1). Il programma avviato dal sottoprocesso deve usare questo fd per scrivere
dati a scioccato (esempio).

sospiro, segno, sigquita
Ha scioccato passare segnali di questo tipo al sottoprocesso. Se nessun indirizzo ha questo
opzione, socat termina su questi segnali.

TERMIO opzione gruppo

Per gli indirizzi che funzionano su una tty (es. stdio, file:/dev/tty, exec:...,pty), il terminale
i parametri definiti nel meccanismo termios UN*X sono resi disponibili come opzione di indirizzo
parametri. Tieni presente che le modifiche ai parametri del tuo terminale interattivo
rimangono efficaci dopo scioccatodi terminazione, quindi potresti dover inserire "reset" o "stty
sane" nella tua shell in seguito. Per gli indirizzi EXEC e SYSTEM con l'opzione PTY, questi
le opzioni si applicano al pty dai processi figlio.

b0 Scollega il terminale.

b19200 Imposta la velocità della linea seriale a 19200 baud. Alcune altre tariffe sono possibili; uso
qualcosa come socat -hh |grep ' b[1-9]' per trovare tutte le velocità supportate dal tuo
attuazione.
Nota: su alcuni sistemi operativi, queste opzioni potrebbero non essere disponibili. Usa ispeed o
ospeed invece.

eco=
Abilita o disabilita l'eco locale.

iconon=
Imposta o cancella la modalità canonica, abilitando il buffering di riga e alcuni caratteri speciali.

crudo Imposta la modalità raw, passando così input e output quasi non elaborati. Questa opzione è
obsoleto, utilizzare invece l'opzione rawer o cfmakeraw.

più crudo Rende il terminale più grezzo dell'opzione raw. Questa opzione disattiva implicitamente l'eco.
(esempio).

cfmakeraw
Imposta la modalità raw invocando cfmakeraw() o simulando questa chiamata. Questa opzione
disattiva implicitamente l'eco.

ignbrk=
Ignora o interpreta il carattere BREAK (ad es. ^C)

brkint=

bs0

bs1

bsdly=<0|1>

clocal=

cr0
cr1
cr2
cr3

Imposta il ritardo di ritorno a capo rispettivamente su 0, 1, 2 o 3. 0 significa nessun ritardo,
gli altri valori dipendono dal terminale.

crdly=<0|1|2|3>

cread=

crtscts=

cs5
cs6
cs7
cs8

Imposta la dimensione del carattere rispettivamente a 5, 6, 7 o 8 bit.

csize=<0|1|2|3>

cstopb=
Imposta due bit di stop, anziché uno.

dsusp=
Imposta il valore per il carattere VDSUSP che sospende il primo piano corrente
process e riattiva la shell (tutti tranne Linux).

ecoctl=
Echos controlla i caratteri nella notazione del cappello (es. ^A)

eco=

echok=

eco=

echon=

ecoprt=

eof=

eol=

eol2=

cancella=

scartare=

ff0

ff1

ffdly=

flusho=

hupcl=

icrnl=

iexten=

igncr=

ignpar=

imaxbel=

inlcr=

inpck=

intr=

isig=

ispeed=
Imposta la velocità di trasmissione dei dati in entrata su questa linea.
Vedi anche: ospeed, b19200

istrip=

iucc=

ixany=

ixoff=

ixon=

uccidere=

successivo=

min=

nl0 Imposta il ritardo di nuova riga su 0.

nl1

nldly=

noflsh=

ocrnl=

ofdel=

ofill=

olcuc=

onlcr=

onlret=

onocr=

opost=
Abilita o disabilita l'elaborazione dell'output; ad esempio, converte NL in CR-NL.

ospeed=
Imposta la velocità di trasmissione dei dati in uscita su questa linea.
Vedi anche: ispeed, b19200

parenb=
Abilita la generazione della parità sull'output e il controllo della parità sull'input.

parmrk=

parod=

pendino=

esci=

ristampa=

sano di mente Porta il terminale a qualcosa di simile a uno stato predefinito utile.

inizio=

fermare=

sosp=

swtc=

tab0

tab1

tab2

tab3

tabdly=

tempo=

tostop=

vt0

vt1

vtdly=

wease=

xcase=

xtabs

i-pop-tutto
Con UNIX System V STREAMS, rimuove tutti i driver dallo stack.

i-push=
Con UNIX System V STREAMS, spinge il driver (modulo) con il nome dato (stringa)
sulla pila. Ad esempio, per assicurarsi che un dispositivo a caratteri su Solaris
supporta termios ecc., usa le seguenti opzioni:
i-pop-all,i-push=ptem,i-push=ldterm,i-push=ttcompat

PTY opzione gruppo

Queste opzioni sono destinate all'uso con il tipo di indirizzo pty.

collegamento=
Genera un collegamento simbolico che punta allo pseudo terminale effettivo (pty). Questo
potrebbe aiutare a risolvere il problema che i pty vengono generati con più o meno
nomi imprevedibili, rendendo difficile l'accesso diretto al pty generated generato da socat
automaticamente. Con questa opzione, l'utente può specificare un punto "fisso" nel file
gerarchia che lo aiuta ad accedere al pty effettivo (esempio). Iniziando con scioccato
versione 1.4.3, il collegamento simbolico viene rimosso quando l'indirizzo viene chiuso (ma vedi
opzione scollega-chiudi).

aspetta-schiavo
Blocca la fase aperta finché un processo non apre il lato slave del pty. Solitamente,
socat continua dopo aver generato il pty con l'apertura dell'indirizzo successivo o con
entrare nel circuito di trasferimento. Con l'opzione wait-slave, socat aspetta che qualche
il processo apre il lato slave del pty prima di continuare. Questa opzione funziona solo
se il sistema operativo fornisce la chiamata di sistema poll(). E dipende da un
comportamento non documentato di pty, quindi non funziona su tutti i sistemi operativi. Esso
è stato testato con successo su Linux, FreeBSD, NetBSD e su Tru64 con openpty.

pty-intervallo=
Quando l'opzione wait-slave è impostata, socat controlla periodicamente la condizione HUP
usando poll() per trovare se il lato slave del pty è stato aperto. Il sondaggio predefinito
l'intervallo è 1s. Utilizzare l'opzione pty-interval [timeval] per modificare questo valore.

OPENSL opzione gruppo

Queste opzioni si applicano ai tipi di indirizzo openssl e openssl-listen.

cifra =
Seleziona l'elenco delle cifre che possono essere utilizzate per la connessione. Vedi la pagina man
di cifre, sezione CIPHER ELENCO FORMATO, per informazioni dettagliate sulla sintassi,
valori e default di .
Possono essere fornite diverse stringhe di cifratura, separate da ':'. Alcune semplici stringhe di cifratura:

3DES Utilizza una suite di cifratura con triplo DES.

MD5 Usa una suite di cifratura con MD5.

aNULL Utilizza una suite di crittografia senza autenticazione.

NULL Non utilizza la crittografia.

ALTO Utilizza una suite di crittografia con crittografia "alta". Nota che il peer deve supportare il
proprietà selezionata o la negoziazione avrà esito negativo.

metodo=
Imposta la versione del protocollo da utilizzare. Le stringhe valide (senza distinzione tra maiuscole e minuscole) sono:

SSL2 Selezionare il protocollo SSL versione 2.

SSL3 Selezionare il protocollo SSL versione 3.

SSL23 Selezionare il miglior protocollo SSL o TLS disponibile. Questa è l'impostazione predefinita quando questa opzione
non è fornito.

TLS1 Selezionare il protocollo TLS versione 1.

TLS1.1 Selezionare il protocollo TLS versione 1.1.

TLS1.2 Selezionare il protocollo TLS versione 1.2.

DTLS1 Seleziona la versione 1 del protocollo DTLS.

verifica=
Controlla il controllo del certificato del peer. Il valore predefinito è 1 (vero). Disabilitazione della verifica
potrebbe aprire il tuo socket a tutti, rendendo inutile la crittografia!

certificato=
Specifica il file con il certificato e la chiave privata per l'autenticazione. Il
il certificato deve essere in formato OpenSSL (*.pem). Con openssl-listen, usa questo
opzione è fortemente consigliata. Tranne con cifrario aNULL, errore "nessuna cifratura condivisa"
si verificherà quando non viene rilasciato alcun certificato.

chiave=
Specifica il file con la chiave privata. La chiave privata può essere in questo file o in
il file fornito con l'opzione cert. La parte che deve dimostrare che è il
il proprietario di un certificato necessita della chiave privata.

dhparams=
Specifica il file con i parametri Diffie Hellman. Questi parametri possono anche essere
nel file fornito con l'opzione cert nel qual caso l'opzione dhparams non lo è
necessario.

cafile=
Specifica il file con i certificati di autorità attendibili (root). Il file deve essere
in formato PEM e dovrebbe contenere uno o più certificati. La festa che controlla
l'autenticazione del suo peer considera attendibile solo i certificati presenti in questo file.

capath=
Specifica la directory con i certificati attendibili (root). La directory deve
contenere certificati in formato PEM e relativi hash (vedi documentazione OpenSSL)

egd=
Su alcuni sistemi openssl richiede una fonte esplicita di dati casuali. Specificare la
nome del socket in cui un demone che raccoglie l'entropia come egd fornisce dati casuali, ad es
/dev/egd-pool.

pseudo- Sui sistemi dove openssl non riesce a trovare una fonte di entropia e dove non c'è entropia
può essere utilizzato il demone di raccolta, questa opzione attiva un meccanismo per fornire
pseudo entropia. Questo si ottiene prendendo l'ora corrente in microsecondi per
alimentando il generatore di numeri pseudo casuali libc con un valore iniziale. openssl è
quindi alimentato con l'output delle chiamate random\().
NOTA: questo meccanismo non è sufficiente per la generazione di chiavi sicure!

comprimere
Abilitare o disabilitare l'uso della compressione per una connessione. Impostandolo su "nessuno"
disabilita la compressione, impostandola su "auto" consente a OpenSSL di scegliere la migliore disponibile
algoritmo supportato da entrambe le parti. L'impostazione predefinita è non toccarne nessuno
impostazioni relative alla compressione. NOTA: richiede OpenSSL 0.9.8 o successivo e la disabilitazione
la compressione con OpenSSL 0.9.8 influisce su tutte le nuove connessioni nel processo.

nome comune=
Specificare il nome comune a cui deve corrispondere il certificato peer. Con OPENSSL-CONNECT
indirizzo questo sovrascrive il nome host dato o l'indirizzo IP di destinazione; con OPENSSL-LISTEN
questo attiva il controllo dei certificati peer commonname. Questa opzione ha solo un significato
quando l'opzione verifica non è disabilitata e il codice scelto fornisce un peer
certificato.

fips Abilita la modalità FIPS se compilata. Per informazioni sull'implementazione della crittografia FIPS
vedi standard http://oss-institute.org/fips-faq.html. Questa modalità potrebbe richiederlo
i certificati coinvolti sono generati con una versione di openssl abilitata per FIPS.
L'impostazione o la cancellazione di questa opzione su un indirizzo socat influisce su tutti gli indirizzi OpenSSL
di questo processo.

RIPROVA opzione gruppo

Opzioni che controllano i tentativi di alcune chiamate di sistema, in particolare i tentativi di connessione.

riprova=
Numero di tentativi prima dell'interruzione della connessione o del tentativo di ascolto. L'impostazione predefinita è
0, che significa solo un tentativo.

intervallo=
Tempo tra tentativi consecutivi (secondi, [timespec]). L'impostazione predefinita è 1 secondo.

per sempre
Esegue un numero illimitato di tentativi.

TUN opzione gruppo

Opzioni che controllano gli indirizzi dei dispositivi dell'interfaccia TUN/TAP di Linux.

tun-device=
Indica a socat di prendere un altro percorso per il dispositivo clone TUN. L'impostazione predefinita è
/dev/net/tun.

nome-tun=
Assegna all'interfaccia di rete risultante un nome specifico invece del sistema
generato (tun0, tun1, ecc.)

tipo-tun=[tun|tocca]
Imposta il tipo di dispositivo TUN; utilizzare questa opzione per generare un dispositivo TAP. Vedi il
Linux docu per la differenza tra questi tipi. Quando provi a stabilire un
tunnel tra due dispositivi TUN, i loro tipi dovrebbero essere gli stessi.

se-no-pi
Imposta il flag IFF_NO_PI che controlla se il dispositivo include pacchetti aggiuntivi
informazioni nel tunnel. Quando si tenta di stabilire un tunnel tra due TUN
dispositivi, questi flag dovrebbero avere gli stessi valori.

se in alto Imposta lo stato dell'interfaccia di rete TUN SU. Fortemente raccomandato.

iff-trasmissione
Imposta il flag BROADCAST dell'interfaccia di rete TUN.

se-debug
Imposta il flag DEBUG dell'interfaccia di rete TUN.

se il loopback
Imposta il flag LOOPBACK dell'interfaccia di rete TUN.

se-punto
Imposta il flag POINTOPOINT del dispositivo TUN.

se-notrailers
Imposta il flag NOTRAILERS del dispositivo TUN.

se in esecuzione
Imposta il flag RUNNING del dispositivo TUN.

se-noarp
Imposta il flag NOARP del dispositivo TUN.

se-promisc
Imposta il flag PROMISC del dispositivo TUN.

se-tutto multi
Imposta il flag ALLMULTI del dispositivo TUN.

se-master
Imposta il flag MASTER del dispositivo TUN.

iff-schiavo
Imposta il flag SLAVE del dispositivo TUN.

se-multicast
Imposta il flag MULTICAST del dispositivo TUN.

se-portsel
Imposta il flag PORTSEL del dispositivo TUN.

se-automedia
Imposta il flag AUTOMEDIA del dispositivo TUN.

iff-dinamico
Imposta il flag DYNAMIC del dispositivo TUN.

DATA VALORI


Questa sezione spiega i diversi tipi di dati che indirizzano i parametri e le opzioni di indirizzo
potere prendere.

intervallo di indirizzi
Attualmente è implementato solo per IPv4 e IPv6. Vedi indirizzo-opzione 'intervallo'

bool "0" o "1"; se valore viene omesso, viene preso "1".

byte Un numero int senza segno, letto con strtoul() , inferiore o uguale a UCHAR_MAX .

Da riga di comando
Una stringa che specifica un nome di programma e i suoi argomenti, separati da spazi singoli.

data Una specifica dei dati grezzi che segue ramo sintassi. Attualmente l'unica forma valida è a
stringa che inizia con 'x' seguita da un numero pari di cifre esadecimali, specificando a
sequenza di byte.

elenco
Una stringa con la consueta semantica del nome della directory UN*X.

facilità
Il nome di una struttura syslog in caratteri minuscoli.

fdnum Un tipo int senza segno, letto con strtoul() , che specifica un descrittore di file UN*X.

Nome del file
Una stringa con la consueta semantica del nome file UN*X.

group Se il primo carattere è una cifra decimale, il valore viene letto con strtoul() come
intero senza segno che specifica un ID di gruppo. Altrimenti, deve essere un gruppo esistente
nome.

int Un numero che segue le regole della funzione strtol() con base "0", cioè decimale
numero, numero ottale con "0" all'inizio o numero esadecimale con "0x" all'inizio. Il
il valore deve rientrare in un C int.

interfaccia
Una stringa che specifica il nome del dispositivo di un'interfaccia di rete come mostrato da ifconfig o
procan, ad esempio "eth0".

Indirizzo IP
Un indirizzo IPv4 in notazione numeri e punti, un indirizzo IPv6 in notazione esadecimale
racchiuso tra parentesi o un nome host che si risolve in un indirizzo IPv4 o IPv6.
Esempi: 127.0.0.1, [::1], www.dest-unreach.org, dns1

Indirizzo IPv4
Un indirizzo IPv4 in notazione con numeri e punti o un nome host che si risolve in un IPv4
indirizzo.
Esempi: 127.0.0.1, www.dest-unreach.org, dns2

Indirizzo IPv6
Un indirizzo iPv6 nella notazione di numeri esadecimali e due punti racchiusi tra parentesi quadre, o a
nome host che si risolve in un indirizzo IPv6.
Examples: [::1], [1234:5678:9abc:def0:1234:5678:9abc:def0], ip6name.domain.org

long Un numero letto con strtol() . Il valore deve rientrare in una C lunga.

lungo lungo
Un numero letto con strtoll() . Il valore deve rientrare in una C long long.

off_t Un numero con segno dipendente dall'implementazione, di solito 32 bit, letto con strtol o
strtoll.

off64_t
Un numero con segno dipendente dall'implementazione, di solito 64 bit, letto con strtol o
strtoll.

mode_t Un intero senza segno, letto con strtoul() , che specifica i bit di modalità (permesso).

pid_t Un numero, letto con strtol() , specificando un id di processo.

port A uint16_t (16 bit unsigned number) che specifica una porta TCP o UDP, leggere con
strtoul() .

protocollo
Un numero a 8 bit senza segno, letto con strtoul() .

size_t Un numero senza segno con limitazioni size_t, letto con strtoul .

soprannome
Un indirizzo socket. Vedi l'opzione indirizzo "bind"

stringa Una sequenza di caratteri, che non contiene '\0' e, a seconda della posizione all'interno
la riga di comando, ':', ',' o "!!". Nota che potresti dover sfuggire a shell meta
caratteri nella riga di comando.

servizio TCP
Un nome di servizio, che non inizia con una cifra, che viene risolto da getservbyname() , o
un numero int a 16 bit senza segno letto con strtoul() .

valore temporale
Un doppio float che specifica i secondi; il numero è mappato in una struttura timeval,
composto da secondi e microsecondi.

tempistica
Un doppio float che specifica i secondi; il numero è mappato in una struttura timespec,
composto da secondi e nanosecondi.

Servizio UDP
Un nome di servizio, che non inizia con una cifra, che viene risolto da getservbyname() , o
un numero int a 16 bit senza segno letto con strtoul() .

int
Un numero letto con strtoul() . Il valore deve rientrare in un C unsigned int.

utente Se il primo carattere è una cifra decimale, il valore viene letto con strtoul() come
intero senza segno che specifica un ID utente. In caso contrario, deve essere un nome utente esistente.

ESEMPI


scioccato - TCP4:www.dominio.org:80

trasferisce i dati tra STDIO (-) e una connessione TCP4 alla porta 80 dell'host
www.dominio.org. Questo esempio risulta in una connessione interattiva simile a telnet
o netcat. I parametri del terminale stdin non vengono modificati, quindi puoi chiudere il
inoltrare con ^D o interromperlo con ^C.

scioccato -d -d READLINE,storia=$HOME/.http_storia \
TCP4:www.dominio.org:www,crnl

questo è simile all'esempio precedente, ma puoi modificare la riga corrente in a
bash come modo (READLINE) e usa il file di cronologia .http_history; scioccato stampe
messaggi sullo stato di avanzamento (-d -d). La porta è specificata dal nome del servizio (www) e
vengono utilizzati i caratteri di terminazione della linea di rete corretti (crnl) invece di NL.

scioccato TCP4-ASCOLTA:www TCP4:www.dominio.org:www

installa un semplice port forwarder TCP. Con TCP4-LISTEN ascolta sulla porta locale
"www" finché non arriva una connessione, la accetta, quindi si connette all'host remoto
(TCP4) e avvia il trasferimento dei dati. Non accetterà una seconda connessione.

scioccato -d -d -lmlocal2 \
TCP4-LISTEN:80,bind=myaddr1,reuseaddr,fork,su=nobody,range=10.0.0.0/8 \
TCP4:www.dominio.org:80,bind=mioaddr2

TCP port forwarder, ogni lato associato a un altro indirizzo IP locale (bind). Questo
esempio gestisce un numero quasi arbitrario di connessioni parallele o consecutive
biforcando un nuovo processo dopo ogni accept() . Fornisce un po' di sicurezza da
fare causa all'utente nessuno dopo il fork; permette solo connessioni dal privato
10 rete (gamma); grazie a reuseaddr, consente il riavvio immediato dopo il master
terminazione del processo, anche se alcuni socket figlio non sono stati completamente chiusi.
Con -lmlocal2, socat registra su stderr fino a raggiungere con successo il ciclo di accettazione.
L'ulteriore registrazione è diretta a syslog con la funzione local2.

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

un semplice server che accetta connessioni (TCP4-LISTEN) e fork è un nuovo figlio
processo per ogni connessione; ogni bambino funge da staffetta singola. Il cliente deve
corrisponde alle regole per il nome del processo demone "script" in /etc/hosts.allow ed
/etc/hosts.deny, altrimenti viene rifiutato l'accesso (vedi "man 5 hosts_access"). Per
ESECUZIONE del programma, il processo figlio chroot va a /casa/sabbiera, su è per l'utente
sandbox, quindi avvia il programma /home/sandbox/bin/myscript. Socat e il mio script
comunicare tramite uno pseudo tty (pty); stderr di myscript viene reindirizzato a stdout, quindi
i suoi messaggi di errore vengono trasferiti tramite scioccato al cliente connesso.

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

mail.sh è uno script di shell, distribuito con scioccato, che implementa un semplice SMTP
cliente. È programmato per "parlare" SMTP sui suoi FD 3 (in) e 4 (out). il fdin
e le opzioni fdout dicono scioccato utilizzare questi FD per la comunicazione con il programma.
Perché mail.sh eredita stdin e stdout while scioccato non li usa, lo script
può leggere un corpo di posta da stdin. Socat rende alias1 il tuo indirizzo di origine locale
(bind), si occupa della corretta terminazione della linea di rete (crnl) e invia al massimo 512
byte di dati per pacchetto (mss).

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

apre una connessione interattiva tramite la linea seriale, ad esempio per parlare con un modem.
rawer imposta i parametri del terminale della console e di ttyS0 su valori praticabili,
crnl converte in caratteri di nuova riga corretti. escape consente di terminare la socat
processo con controllo del carattere-O.

scioccato UNIX-LISTEN:/tmp/.X11-unix/X1, fork \
SOCKS4:host.victim.org:127.0.0.1:6000,socksuser=nessuno,sourceport=20

con UNIX-LISTEN, scioccato apre un socket di dominio UNIX in ascolto /tmp/.X11-unix/X1.
Questo percorso corrisponde al display XWindow locale :1 sulla tua macchina, quindi XWindow
le connessioni client a DISPLAY=:1 sono accettate. Socat poi parla con il SOCKS4
server host.victim.org che potrebbe consentire connessioni basate su sourceport 20 a causa di un
Debolezza relativa all'FTP nei suoi filtri IP statici. Socat finge di essere invocato da
calzini utente nessuno, e richiede di essere connesso alla porta di loopback 6000 (solo debole
le configurazioni sockd lo consentiranno). Quindi otteniamo una connessione con le vittime
server XWindow e, se non richiede cookie MIT o autenticazione Kerberos,
possiamo iniziare a lavorare. Si prega di notare che può esserci solo una connessione alla volta,
perché TCP può stabilire solo una sessione con un determinato insieme di indirizzi e porte.

scioccato -u /tmp/readdata,seek-end=0,ignoreof -

questo è un esempio di trasferimento dati unidirezionale (-u). Socat trasferisce i dati da
file /tmp/readdata (indirizzo implicito GOPEN), a partire dalla sua fine corrente
(seek-end=0 lascia scioccato inizia a leggere alla fine corrente del file; usa la ricerca=0 o nessuna ricerca
opzione per leggere prima i dati esistenti) in una modalità simile a "tail -f" (ignoreeof). Il
"file" potrebbe anche essere un socket di dominio UNIX in ascolto (non usare un'opzione di ricerca
poi).

(dormire 5; eco PAROLA D'ORDINE; sonno 5; eco ls; sonno 1) |
scioccato - EXEC:'ssh -l Utente server',pty,setsid,ctty

EXEC esegue una sessione ssh sul server. Utilizza un pty per la comunicazione tra scioccato ed
ssh, fa in modo che ssh controlli tty (ctty) e rende questo pty il proprietario di un nuovo
process group (setsid), quindi ssh accetta la password da scioccato.

scioccato -u TCP4-ASCOLTA:3334,reuseaddr,fork \
APRI:/tmp/in.log,crea,append

implementa un semplice raccoglitore di messaggi basato sulla rete. Per ogni cliente che si connette a
porta 3334, viene generato un nuovo processo figlio (opzione fork). Tutti i dati inviati dal
i client vengono aggiunti al file /tmp/in.log. Se il file non esiste, socat
crealo. L'opzione reuseaddr consente il riavvio immediato del processo del server.

scioccato PTY,link=$HOME/dev/vmodem0,rawer,wait-slave \
EXEC:"ssh modemserver.us.org scioccato - /dev/ttyS0,nonblock,rawer"

genera un dispositivo pseudo terminale (PTY) sul client che può essere raggiunto sotto
il collegamento simbolico $HOME/dev/vmodem0. Un'applicazione che si aspetta una linea seriale o
il modem può essere configurato per l'uso $HOME/dev/vmodem0; il suo traffico sarà diretto a a
modemserver tramite ssh dove un'altra istanza di socat lo collega a /dev/ttyS0.

scioccato TCP4-ASCOLTA:2022,reuseaddr,fork \
PROXY:proxy:www.domain.org:22,proxyport=3128,proxyauth=utente:pass

avvia un forwarder che accetta connessioni sulla porta 2022 e le indirizza attraverso
il demone proxy in ascolto sulla porta 3128 (proxyport) sul proxy host, usando il
CONNECT, dove vengono autenticati come "utente" con "pass" (proxyauth). Il
il proxy dovrebbe quindi stabilire connessioni per ospitare www.domain.org sulla porta 22.

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

è un client OpenSSL che tenta di stabilire una connessione sicura a un server SSL.
L'opzione cafile specifica un file che contiene certificati di fiducia: ci fidiamo del
server solo quando presenta uno di questi certificati e prova che possiede il
relativa chiave privata. In caso contrario la connessione viene interrotta. Con certificato un file
contenente il certificato client e la chiave privata associata è specificato. Questo
è richiesto nel caso in cui il server desideri un'autenticazione client; molti Internet
i server no.
Il primo indirizzo ('-') può essere sostituito da quasi tutti gli altri indirizzi socat.

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

è un server OpenSSL che accetta connessioni TCP, presenta il certificato da
il file server.pem e forza il client a presentare un certificato verificato
contro cafile.crt.
Il secondo indirizzo ("PIPE") può essere sostituito da quasi tutti gli altri indirizzi socat.
Per istruzioni sulla generazione e distribuzione di chiavi e certificati OpenSSL, vedere
il documento aggiuntivo socat socat-openssl.txt.

eco |socat -u - file:/tmp/bigfile,crea,largefile,cerca=100000000000

crea un file sparse da 100 GB; questo richiede un tipo di file system che lo supporti
(ext2, ext3, reiserfs, jfs; non minix, vfat). L'operazione di scrittura di 1 byte potrebbe
impiega molto tempo (reiserfs: alcuni minuti; ext2: tempo "no") e il file risultante può
consuma un po' di spazio su disco solo con i suoi inode (reiserfs: 2MB; ext2: 16KB).

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

ascolta le connessioni TCP in entrata sulla porta 7777. Per ogni connessione accettata,
invoca una shell. Questa shell ha i suoi stdin e stdout direttamente connessi al TCP
presa (nofork). La shell avvia il filan e gli consente di stampare gli indirizzi del socket su
stderr (la tua finestra di terminale).

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

funziona come editor binario primitivo: scrive i 4 byte 000 014 000 000 nel
eseguibile /usr/bin/squid all'offset 0x00074420 (questa è una patch del mondo reale da fare
l'eseguibile squid da Cygwin eseguito sotto Windows, aggiornato a maggio 2004).

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

si connette a un servizio sconosciuto e impedisce l'allagamento.

scioccato -U TCP: destinazione: 9999, fine chiusura TCP-L:8888, riutilizza indirizzo, fork

unisce i dati in arrivo da diversi flussi TCP sulla porta 8888 in un solo flusso a
obiettivo: 9999. L'opzione end-close impedisce che i processi figlio vengano deviati da
secondo indirizzo dalla terminazione della connessione condivisa a 9999 (chiudi\(2) solo
scollega l'inode che rimane attivo finché il processo genitore vive;
shutdown\(2) interromperebbe attivamente la connessione).

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

invia un broadcast alla rete 192.168.1.0/24 e riceve le risposte del
timeserver lì. Ignora i pacchetti NTP da host esterni a questa rete.

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

è semanticamente equivalente all'esempio precedente, ma tutti i parametri sono
specificato in forma generica. il valore 6 di setsockopt-int è il valore Linux per
SO_BROADCAST.

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

invia una trasmissione alla rete locale\(s) utilizzando il protocollo 44. Accetta le risposte da
solo l'intervallo di indirizzi privati.

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

trasferisce i dati da stdin all'indirizzo multicast specificato utilizzando UDP. Entrambi locali
e le porte remote sono 6666. Dice all'interfaccia eth0 di accettare anche il multicast
pacchetti del gruppo dato. Più host sulla rete locale possono eseguire questo
comando, quindi tutti i dati inviati da uno qualsiasi degli host verranno ricevuti da tutti gli altri
quelli. Tieni presente che ci sono molte possibili ragioni di errore, inclusi i filtri IP,
problemi di routing, selezione errata dell'interfaccia da parte del sistema operativo, bridge o a
interruttore mal configurato.

scioccato TCP:host2:4443 TUN:192.168.255.1/24, su

stabilisce un lato di una rete virtuale (ma non privata!) con host2 dove a
potrebbe essere eseguito un processo simile, con UDP-L e l'indirizzo tun 192.168.255.2. possono raggiungere
tra loro utilizzando gli indirizzi 192.168.255.1 e 192.168.255.2. Nota che lo streaming
per esempio. tramite TCP o SSL non garantisce il mantenimento dei confini del pacchetto e potrebbe quindi
causare la perdita di pacchetti.

scioccato PTY,link=/var/run/ppp,rawer INTERFACCIA: hdlc0

aggira il problema che pppd richiede un dispositivo seriale e quindi potrebbe non esserlo
in grado di lavorare su una linea sincrona rappresentata da un dispositivo di rete. socat
crea un PTY per rendere felice pppd, si collega all'interfaccia di rete hdlc0 e può
trasferire i dati tra i due dispositivi. Quindi usa pppd sul dispositivo /var/run/ppp.

scioccato -T 1 -d -d TCP-L:10081,reuseaddr,fork,crlf SISTEMA: "eco -e \"\\\"HTTP/1.0 200
OK\\\nTipo di documento: testo/normale\\\n\\\data:
\$\(data\)\\\nserver:\$SOCAT_SOCKADDR:\$SOCAT_SOCKPORT\\\nclient:
\$SOCAT_PEERADDR:\$SOCAT_PEERPORT\\\n\\\"\"; gatto; eco -e \"\\\"\\\n\\\"\""

crea un semplice server HTTP echo: ogni client HTTP che si connette ottiene un HTTP valido
risposta che contiene informazioni sull'indirizzo e la porta del client così come sono visti da
l'host del server, l'indirizzo dell'host (che potrebbe variare sui server multihomed) e il
richiesta originale del cliente.

scioccato -d -d
UDP4-RECVFROM:9999,così-broadcast,così-timestamp,ip-pktinfo,ip-recverr,ip-recvopts,ip-recvtos,ip-recvttl!!-
SISTEMA:'esportazione; sonno 1 ' |grep SOCAT

attende un pacchetto UDP in arrivo sulla porta 9999 e stampa le variabili di ambiente
fornito da socat. Sui sistemi basati su BSD devi sostituire ip-pktinfo con
ip-recvdstaddr,ip-recvif. Particolarmente interessante è SOCAT_IP_DSTADDR: contiene
l'indirizzo di destinazione del pacchetto che può essere unicast, multicast o broadcast
indirizzo.

DIAGNOSTICA


Socat utilizza un meccanismo di registrazione che consente di filtrare i messaggi in base alla gravità. Le gravità
purché siano più o meno compatibili con la priorità syslog appropriata. Con uno o fino a
quattro occorrenze dell'opzione della riga di comando -d, la priorità più bassa dei messaggi che sono
emesso può essere selezionato. Ogni messaggio contiene un singolo carattere maiuscolo che specifica il
gravità dei messaggi (uno tra F, E, W, N, I o D)

FATAL: Condizioni che richiedono la cessazione incondizionata e immediata del programma.

ERRORE: condizioni che impediscono la corretta elaborazione del programma. Di solito il programma è
terminato (vedi opzione -s).

ATTENZIONE:
Qualcosa non ha funzionato correttamente o è in uno stato in cui è corretto ulteriormente
l'elaborazione non può essere garantita, ma potrebbe essere possibile.

AVVISO:
Azioni interessanti del programma, ad es. per la supervisione scioccato in una specie di
modalità server.

INFO: Descrizione di cosa fa il programma e forse perché succede. Consente di monitorare
i cicli di vita dei descrittori di file.

DEBUG: Descrizione di come funziona il programma, tutte le chiamate di sistema o di libreria e loro
risultati.

I messaggi di registro possono essere scritti su stderr, su un file o su syslog.

All'uscita, scioccato dà lo stato 0 se è terminato per EOF o timeout di inattività, con a
valore positivo in caso di errore e con valore negativo in caso di errore fatale.

Usa filan online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

  • 1
    NSIS: sistema di installazione con script Nullsoft
    NSIS: sistema di installazione con script Nullsoft
    NSIS (installazione con script Nullsoft
    System) è un open source professionale
    sistema per creare programmi di installazione di Windows. Esso
    è progettato per essere il più piccolo e flessibile
    come possibile...
    Scarica NSIS: Nullsoft Scriptable Install System
  • 2
    autorizzazione
    autorizzazione
    AuthPass è una password open source
    manager con il supporto per il popolare e
    comprovato Keepass (kdbx 3.x E kdbx 4.x ...
    Scarica pass di autenticazione
  • 3
    Zabbix
    Zabbix
    Zabbix è un open di classe enterprise
    soluzione di monitoraggio distribuito alla fonte
    progettato per monitorare e tracciare
    prestazioni e disponibilità della rete
    server, dispositivo...
    Scarica Zabbix
  • 4
    KDiff3
    KDiff3
    Questo repository non è più mantenuto
    ed è conservata a scopo di archivio. Vedere
    https://invent.kde.org/sdk/kdiff3 for
    il codice più recente e
    https://download.kde.o...
    Scarica KDiff3
  • 5
    USB LoaderGX
    USB LoaderGX
    USBLoaderGX è una GUI per
    Caricatore USB di Waninkoko, basato su
    libwiigui. Consente la quotazione e
    lancio di giochi Wii, giochi Gamecube e
    homebrew su Wii e WiiU...
    Scarica USBLoaderGX
  • 6
    Firebird
    Firebird
    Firebird RDBMS offre funzionalità ANSI SQL
    e funziona su Linux, Windows e
    diverse piattaforme Unix. Caratteristiche
    concorrenza e prestazioni eccellenti
    & potenza...
    Scarica l'uccello di fuoco
  • Di Più "

Comandi Linux

Ad