EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

filan - Online în cloud

Rulați filan în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este comanda filan care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


socat - releu multifuncțional (SOcket CAT)

REZUMAT


socat [opțiuni]
socat -V
socat -h[h[h]] | -?[?[?]]
etc.
procan

DESCRIERE


Socat este un utilitar bazat pe linia de comandă care stabilește două fluxuri de octeți bidirecționale și
transferă date între ele. Deoarece fluxurile pot fi construite dintr-un set mare de
diferite tipuri de colectoare și surse de date (a se vedea tipurile de adrese) și pentru că o mulțime de adrese
opțiunile pot fi aplicate fluxurilor, socat poate fi folosit în multe scopuri diferite.

etc. este un utilitar care imprimă informații despre descriptorii săi de fișiere activi în stdout. Aceasta
a fost scris pentru depanare SOCAT, dar ar putea fi util și în alte scopuri. Folosește
-h opțiune pentru a găsi mai multe informații.

Procan este un utilitar care imprimă informații despre parametrii de proces în stdout. Are
au fost scrise pentru a înțelege mai bine unele proprietăți ale procesului UNIX și pentru depanare SOCAT,
dar ar putea fi util și în alte scopuri.

Ciclul de viață al unui SOCAT instanța constă de obicei din patru faze.

În înăuntru fază, opțiunile liniei de comandă sunt analizate și înregistrarea este inițializată.

În timpul deschide fază, SOCAT deschide prima adresă și apoi a doua adresă.
Acești pași sunt de obicei blocanți; astfel, în special pentru tipurile de adrese complexe, cum ar fi șosetele,
cererile de conectare sau dialogurile de autentificare trebuie finalizate înainte de a face următorul pas
a început.

În transfer fază, SOCAT urmărește ambele fluxuri de descriptori de fișiere de citire și scriere prin
select() și, când datele sunt disponibile pe o parte și poate fi scris pe cealaltă parte,
socat îl citește, efectuează conversii de caractere newline dacă este necesar și scrie datele în
descriptorul fișierului de scriere al celuilalt flux, apoi continuă să aștepte mai multe date în
ambele sensuri.

Când unul dintre fluxuri ajunge efectiv la EOF, închidere începe faza. Socat Transferuri
condiția EOF către celălalt flux, adică încearcă să închidă doar fluxul de scriere,
oferindu-i o șansă să se încheie cu grație. Pentru un timp determinat SOCAT continuă să transfere
date în cealaltă direcție, dar apoi închide toate canalele rămase și se termină.

OPŢIUNI


Socat oferă câteva opțiuni de linie de comandă care modifică comportamentul programului. ei
nu au nimic de-a face cu așa-numitele opțiuni de adresă care sunt utilizate ca părți ale adresei
caietul de sarcini.

-V Versiunea tipărită și informațiile despre caracteristicile disponibile pentru stdout și ieșire.

-h | -?
Tipăriți un text de ajutor la stdout care descrie opțiunile liniei de comandă și adresa disponibilă
tipuri și ieșire.

-hh | - ??
Ca -h, plus o listă a numelor scurte ale tuturor opțiunilor de adrese disponibile. niste
opțiunile depind de platformă, deci această ieșire este utilă pentru verificarea
implementare specială.

-hhh | - ???
Ca -hh, plus o listă cu toate numele opțiunilor de adresă disponibile.

-d Fără această opțiune, sunt generate numai mesaje fatale și de eroare; aplicând aceasta
opțiunea imprimă și mesaje de avertizare. Consultați DIAGNOSTICĂ pentru mai multe informații.

-d -d Imprimă mesaje fatale, de eroare, de avertizare și notificare.

-d -d -d
Imprimă mesaje fatale, de eroare, de avertizare, notificare și informații.

-d -d -d -d
Imprimă mesaje fatale, de eroare, de avertizare, notificare, informații și depanare.

-D Înregistrează informații despre descriptorii fișierelor înainte de a începe faza de transfer.

-te iubesc[ ]
Scrie mesaje în syslog în loc de stderr; severitatea definită cu opțiunea -d.
Cu optional , tipul syslog poate fi selectat, implicit este „daemon”.
Este posibil ca bibliotecile terțe să nu se supună acestei opțiuni.

-lf
Scrie mesaje către [nume fișier] în loc de stderr. Un terț
bibliotecile, în special libwrap, ar putea să nu se supună acestei opțiuni.

-ls Scrie mesaje în stderr (acesta este implicit). Unele biblioteci terțe ar putea
nu se supune acestei opțiuni, în special libwrap pare să se înregistreze numai în syslog.

-lp
Ignoră numele programului imprimat în mesajele de eroare și folosit pentru construcție
numele variabilelor de mediu.

-lu Extinde marcajul de timp al mesajelor de eroare la rezoluția de microsecunde. Nu funcționează
când vă conectați la syslog.

-lm[ ]
Mod jurnal mixt. În timpul pornirii mesajele sunt tipărite în stderr; cand SOCAT începe
bucla fazei de transfer sau modul demon (adică după deschiderea tuturor fluxurilor și înainte
pornirea transferului de date sau, cu prize de ascultare cu opțiune de furcă, înainte de
primul apel, acceptă apelul), schimbă înregistrarea la syslog. Cu optional , cel
Tipul syslog poate fi selectat, implicit este „daemon”.

-lh Adaugă numele de gazdă la mesajele de jurnal. Utilizează valoarea din variabila de mediu HOSTNAME sau
valoarea preluată cu uname() dacă HOSTNAME nu este setat.

-v Scrie datele transferate nu numai în fluxurile țintă, ci și în stderr.
Formatul de ieșire este text cu unele conversii pentru lizibilitate și prefixat cu
„> ” sau „< ” indicând direcțiile de curgere.

-x Scrie datele transferate nu numai în fluxurile țintă, ci și în stderr.
Formatul de ieșire este hexazecimal, prefixat cu „> ” sau „< ” indicând fluxul
directii. Poate fi combinat cu -v .

-b
Setează blocul de transfer de date [mărimea_t]. Cel mult octeții sunt transferați
pe pas. Implicit este 8192 de octeți.

-s În mod implicit, SOCAT se încheie când a apărut o eroare pentru a preveni procesul
rulează când o opțiune nu a putut fi aplicată. Cu această opțiune, SOCAT este neglijent
cu erori și încearcă să continue. Chiar și cu această opțiune, socat va ieși
fatale și va anula încercările de conectare atunci când verificările de securitate au eșuat.

-t
Când un canal a atins EOF, partea de scriere a celuilalt canal este oprită.
Apoi, SOCAT asteapta [timeval] secunde înainte de terminare. Implicit este 0.5
secunde. Acest timeout se aplică numai adreselor în care pot fi scrise și citite
închisă independent. Când în timpul intervalului de timeout partea citită dă EOF,
socat se încheie fără a aștepta expirarea timpului.

-T
Timeout total de inactivitate: când socat este deja în bucla de transfer și nimic
s-a întâmplat pentru [timeval] secunde (nu au sosit date, nicio întrerupere
a avut loc...) apoi se termină. Util cu protocoale precum UDP care nu pot
transfer EOF.

-u Utilizează modul unidirecțional. Prima adresă este folosită doar pentru citire, iar
a doua adresă este folosită doar pentru scris (exemplu).

-U Utilizează modul unidirecțional în direcția inversă. Prima adresă este folosită doar pentru
scris, iar a doua adresă este folosită doar pentru citire.

-g În timpul analizării opțiunilor de adresă, nu verificați dacă opțiunea este considerată utilă în
mediul de adrese dat. Utilizați-l dacă doriți să forțați, de exemplu, aparatul de a
opțiunea priză la un dispozitiv serial.

-L
Dacă fișierul de blocare există, se iese cu eroare. Dacă fișierul de blocare nu există, îl creează și
continuă, deconectează fișierul de blocare la ieșire.

-W
Dacă fișierul de blocare există, așteptați până când dispare. Când fișierul de blocare nu există,
îl creează și continuă, deconectează fișierul de blocare la ieșire.

-4 Utilizați versiunea IP 4 în cazul în care adresele nu specifică implicit sau explicit
o versiune; acesta este implicit.

-6 Utilizați versiunea IP 6 în cazul în care adresele nu specifică implicit sau explicit
o versiune.

ADRESA SPECIFICAȚII


Cu argumentele din linia de comandă adresa, utilizatorul oferă SOCAT instrucțiuni și
informațiile necesare pentru stabilirea fluxurilor de octeți.

O specificație de adresă constă de obicei dintr-un cuvânt cheie de tip adresă, zero sau mai mult
parametrii de adresă necesari separați prin „:” de cuvânt cheie și unul de celălalt și
zero sau mai multe opțiuni de adresă separate prin „,”.

Cuvântul cheie specifică tipul adresei (de exemplu, TCP4, OPEN, EXEC). Pentru unele cuvinte cheie acolo
există sinonime ('-' pentru STDIO, TCP pentru TCP4). Cuvintele cheie nu fac distincție între majuscule și minuscule. Pentru câțiva
tipuri de adrese speciale, cuvântul cheie poate fi omis: Specificații de adresă care încep cu a
numărul se presupune a fi adrese FD (descriptor de fișier brut); dacă se găsește un „/” înainte de
primul „:” sau „,”, se presupune GOPEN (fișier generic deschis).

Numărul necesar și tipul de parametri de adresă depind de tipul de adresă. De exemplu, TCP4
necesită o specificație de server (nume sau adresă) și o specificație de port (număr sau
numele serviciului).

Cu fiecare adresă pot fi date zero sau mai multe opțiuni de adresă. Ele influențează adresa în
unele moduri. Opțiunile constau dintr-un cuvânt cheie opțiune sau un cuvânt cheie opțiune și o valoare,
separate prin „=”. Cuvintele cheie pentru opțiuni nu fac distincție între majuscule și minuscule. Pentru filtrarea opțiunilor care
sunt utile cu un tip de adresă, fiecare opțiune este membră a unui grup de opțiuni. Pentru fiecare
tipul de adresă există un set de grupuri de opțiuni permise. Doar opțiunile aparținând uneia dintre
aceste grupuri de adrese pot fi utilizate (cu excepția opțiunii -g).

Sunt denumite și specificațiile adresei care urmează schema de mai sus singur adresa
specificații. Două adrese unice pot fi combinate cu „!!” a forma a dual tip
adresa pentru un canal. Aici, prima adresă este folosită de SOCAT pentru citirea datelor și
a doua adresă pentru scrierea datelor. Nu există nicio modalitate de a specifica o opțiune o singură dată pentru
fiind aplicat ambelor adrese unice.

De obicei, adresele sunt deschise în modul citire/scriere. Când o adresă face parte dintr-un dual
specificarea adresei sau când se utilizează opțiunea -u sau -U, o adresă poate fi folosită numai pentru
lectură sau pentru scris. Considerând că acest lucru este important pentru unele tipuri de adrese.

Cu versiunea socat 1.5.0 și o versiune ulterioară, analiza lexicală încearcă să gestioneze ghilimele și
parantezele în mod semnificativ și permite evadarea caracterelor speciale. Dacă unul dintre
caractere ( { [ ' este găsit, caracterul de închidere corespunzător - ) } ] ' - este căutat
pentru; pot fi, de asemenea, imbricate. În cadrul acestor constructe, socats caractere speciale și
siruri de caractere : , !! nu sunt tratate special. Toate acele caractere și șiruri de caractere pot fi eliminate
cu \ sau în ""

ADRESA TIPURI


Această secțiune descrie tipurile de adrese disponibile cu cuvintele cheie, parametrii și
semantică.

CREA:
Se deschide cu creat() și folosește descriptorul de fișier pentru scriere. Acest
tipul de adresă necesită context numai pentru scriere, deoarece un fișier deschis cu creat nu poate
fi citit din.
Semnale precum O_LARGEFILE nu pot fi aplicate. Dacă aveți nevoie de ele, utilizați OPEN cu opțiuni
a crea, a crea.
trebuie să fie o cale validă existentă sau neexistentă. Dacă este un numit
pipe, creat() ar putea bloca; dacă se referă la o priză, aceasta este o eroare.
Grupuri de opțiuni: FD,REG,NAMED
Opțiuni utile: mod, utilizator, grup, deconectare-devreme, deconectare-întârziere, adăugare
Vezi și: DESCHIS, GOPEN

EXEC:
Bifurcă un proces secundar care stabilește comunicarea cu procesul său părinte și
invocă programul specificat cu execvp() . este o comandă simplă
cu argumente separate prin spații unice. Dacă numele programului conține un „/”, atunci
partea după ultimul „/” este luată ca ARGV[0]. Dacă numele programului este relativ
cale, se aplică semantica execvp() pentru găsirea programului prin $PATH. După
începere cu succes a programului, SOCAT scrie date în stdin al procesului și citește din
stdout-ul său utilizând un socket de domeniu UNIX generat de socketpair() în mod implicit.
(exemplu)
Grupuri de opțiuni: FD,SOCKET,EXEC,FORK,TERMIOS
Opțiuni utile: path, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, pipe, login, sigint, sigquit
Vezi și: SISTEM

FD:
Utilizează descriptorul de fișier . Trebuie să existe deja ca fișier UN*X valid
descriptor.
Grupuri de opțiuni: FD (TERMIOS,REG,SOCKET)
Vezi și: STDIO, STDIN, STDOUT, STDERR

GOPEN:
(Generic deschis) Acest tip de adresă încearcă să gestioneze orice intrare în sistemul de fișiere, cu excepția
directoare în mod util. poate fi o cale relativă sau absolută. Dacă deja
există, tipul său este verificat. În cazul unui socket de domeniu UNIX, SOCAT conectează; dacă
conectarea eșuează, SOCAT presupune un socket de datagramă și folosește apeluri sendto(). Dacă
intrarea nu este o priză, SOCAT îl deschide aplicând steag-ul O_APPEND. Dacă nu
există, este deschis cu flag O_CREAT ca fișier obișnuit (exemplu).
Grupuri de opțiuni: FD,REG,SOCKET,NAMED,OPEN
Vezi și: OPEN, CREATE, UNIX-CONNECT

IP-SENDTO: :
Deschide un socket IP brut. În funcție de specificația gazdă sau opțiunea pf, protocolul IP
se utilizează versiunea 4 sau 6. Folosește pentru a trimite pachete către [Adresa IP]
și primește pachete de la gazdă, ignoră pachetele de la alte gazde. Protocolul 255
utilizează socket-ul brut, antetul IP fiind parte din date.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6
Opțiuni utile: pf, ttl
Vezi și: IP4-SENDTO, IP6-SENDTO, IP-RECVFROM, IP-RECV, UDP-SENDTO, UNIX-SENDTO

INTERFATA:
Comunică cu o rețea conectată pe o interfață folosind pachete brute inclusiv
date la nivel de link. este numele interfeței de rețea. Momentan doar
disponibil pe Linux. Grupuri de opțiuni: FD,SOCKET
Opțiuni utile: pf, type
Vezi și: ip-recv

IP4-SENDTO: :
Ca IP-SENDTO, dar folosește întotdeauna IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4

IP6-SENDTO: :
Ca IP-SENDTO, dar folosește întotdeauna IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6

IP-DATAGRAM: :
Trimite date de ieșire la adresa specificată, care poate fi în special o difuzare
sau adresa multicast. Pachetele care sosesc pe soclul local sunt verificate dacă au
adresele sursă se potrivesc cu opțiunile RANGE sau TCPWRAP. Acest tip de adresă poate, de exemplu
poate fi utilizat pentru implementarea difuzării simetrice sau asimetrice sau multicast
comunicații.
Grupuri de opțiuni: FD, SOCKET, IP4, IP6, RANGE
Opțiuni utile: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-adăugați-membership, ttl, tos, pf
Vezi și: IP4-DATAGRAM, IP6-DATAGRAM, IP-SENDTO, IP-RECVFROM, IP-RECV, UDP-DATAGRAM

IP4-DATAGRAM: :
Ca IP-DATAGRAM, dar folosește întotdeauna IPv4. (exemplu)
Grupuri de opțiuni: FD,SOCKET,IP4,RANGE

IP6-DATAGRAM: :
Ca IP-DATAGRAM, dar folosește întotdeauna IPv6. Vă rugăm să rețineți că IPv6 nu știe
emisiuni.
Grupuri de opțiuni: FD,SOCKET,IP6,RANGE

IP-RECVFROM:
Deschide un socket IP brut al . În funcție de opțiunea pf, protocolul IP versiunea 4
sau 6 este folosit. Primește un pachet de la un peer nespecificat și poate trimite unul sau
mai multe pachete de răspuns la acel egal. Acest mod este deosebit de util cu furca
opțiune în care fiecare pachet care sosește - de la colegii arbitrari - este gestionat de unul singur
subproces. Acest lucru permite un comportament similar cu serverele bazate pe UDP, cum ar fi
ntpd sau numit.
Vă rugăm să rețineți că pachetele de răspuns pot fi preluate ca trafic de intrare la expeditor
și adresa IP a receptorului sunt identice, deoarece nu există un număr de port la
distingeți prizele.
Această adresă funcționează bine cu adresele de egalitate IP-SENDTO (vezi mai sus). Protocolul 255
utilizează socket-ul brut, antetul IP fiind parte din date.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,CHILD,RANGE
Opțiuni utile: pf, fork, range, ttl, broadcast
Vezi și: IP4-RECVFROM, IP6-RECVFROM, IP-SENDTO, IP-RECV, UDP-RECVFROM,
UNIX-RECVFROM

IP4-RECVFROM:
Ca IP-RECVFROM, dar folosește întotdeauna IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4,CHILD,RANGE

IP6-RECVFROM:
Ca IP-RECVFROM, dar folosește întotdeauna IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,CHILD,RANGE

IP-RECV:
Deschide un socket IP brut al . În funcție de opțiunea pf, protocolul IP versiunea 4
sau 6 este folosit. Primește pachete de la mai mulți colegi nespecificați și îmbină
date. Nu sunt posibile răspunsuri. Poate fi, de exemplu, adresat de socat IP-SENDTO
adresa colegilor. Protocolul 255 utilizează soclul brut din care face parte antetul IP
datele.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,RANGE
Opțiuni utile: pf, range
Vezi și: IP4-RECV, IP6-RECV, IP-SENDTO, IP-RECVFROM, UDP-RECV, UNIX-RECV

IP4-RECV:
Ca IP-RECV, dar folosește întotdeauna IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4,RANGE

IP6-RECV:
Ca IP-RECV, dar folosește întotdeauna IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,RANGE

DESCHIS:
Se deschide folosind apelul de sistem open() (exemplu). Această operație eșuează
Socket-uri de domeniu UNIX.
Notă: Acest tip de adresă este rar util în modul bidirecțional.
Grupuri de opțiuni: FD,REG,NAMED,OPEN
Opțiuni utile: creat, excl, noatime, nofollow, append, rdonly, wronly, lock,
readbytes, ignoreeof
Vezi și: CREATE, GOPEN, UNIX-CONNECT

OPENSL: :
Încearcă să stabilească o conexiune SSL la [Serviciul TCP] activat [Adresa IP]
folosind TCP/IP versiunea 4 sau 6, în funcție de specificația adresei, rezoluția numelui sau
opțiunea pf.
NOTĂ: Până la versiunea 1.7.2.4, certificatul de server a fost verificat doar pentru valabilitate
împotriva depozitului de certificate de sistem sau cafile sau capath, dar nu pentru potrivire cu
numele serverului sau adresa IP a acestuia. Din versiunea 1.7.3.0, socat verifică peer-ul
certificat pentru potrivire cu parametrul sau valoarea lui
opțiunea openssl-commonname. Socat încearcă să-l potrivească cu certificatele
subiect commonName și extensia de certificări subiectAltName nume DNS.
Caracterele joker din certificat sunt acceptate.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,OPENSSL,RETRY
Opțiuni utile: cifrare, metodă, verificare, nume comun cafile, capath, certificat,
cheie, comprimare, legare, pf, conectare-timeout, sourceport, reîncercați
Vezi și: OPENSSL-LISTEN, TCP

OPENSL-ASCULTĂ:
Ascultă pe tcp [Serviciul TCP]. Versiunea IP este 4 sau cea specificată cu
pf. Când o conexiune este acceptată, această adresă se comportă ca un server SSL.
Notă: probabil că doriți să utilizați opțiunea de certificat cu această adresă.
NOTĂ: Certificatul de client este verificat numai pentru valabilitate față de cafile sau capath,
dar nu pentru a se potrivi cu numele clientului sau adresa IP a acestuia!
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,LISTEN,OPENSSL,CHILD,RANGE,RETRY
Opțiuni utile: pf, cipher, method, verify, commonname cafile, capath, certificate,
cheie, comprimați, bifurcați, legați, interval, tcpwrap, su, reuseaddr, reîncercați
Vezi și: OPENSSL, TCP-LISTEN

ȚEVA:
Dacă există deja, este deschis. Dacă nu există, o conductă numită este
creat și deschis. Începând cu versiunea socat 1.4.3, conducta numită este eliminată
când adresa este închisă (dar vezi opțiunea dezlegare-închidere
Notă: Când o conductă este utilizată atât pentru citire, cât și pentru scriere, funcționează ca serviciu de eco.
Notă: Când o conductă este folosită atât pentru citire, cât și pentru scriere, iar socat încearcă să scrie
mai mulți octeți decât poate stoca conducta (Linux 2.4: 2048 octeți), socat ar putea bloca.
Luați în considerare utilizarea opțiunii socat, de exemplu, -b 2048
Grupuri de opțiuni: FD,NAMED,OPEN
Opțiuni utile: rdonly, nonblock, group, user, mode, unlink-early
Vezi și: conductă fără nume

CONDUCTA Creează o conductă fără nume și o folosește pentru citire și scriere. Funcționează ca un ecou,
pentru că tot ce este scris în el apare imediat ca date citite.
Notă: Când socat încearcă să scrie mai mulți octeți decât poate pune în coadă conducta (Linux 2.4: 2048
octeți), socat ar putea bloca. Luați în considerare, de exemplu, utilizarea opțiunii -b 2048
Grupuri de opțiuni: FD
Vezi și: conductă numită

PROXY: : :
Se conectează la un server proxy HTTP pe portul 8080 folosind TCP/IP versiunea 4 sau 6
în funcție de specificația adresei, rezoluția numelui sau opțiunea pf și trimite a
Cerere de CONECTARE pentru nume de gazdă:port. Dacă proxy-ul acordă acces și reușește
conectați-vă la țintă, transferul de date între socat și țintă poate începe. Notă
că traficul nu trebuie să fie HTTP, ci poate fi un protocol arbitrar.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,HTTP,RETRY
Opțiuni utile: proxyport, ignorecr, proxyauth, resolve, crnl, bind,
connect-timeout, mss, sourceport, reîncercați
Vezi și: SOCKS, TCP

PTY Generează un pseudo terminal (pty) și își folosește partea principală. Un alt proces poate
deschideți partea slave a pty-ului folosind-o ca pe o linie serială sau un terminal. (exemplu). Dacă
sunt disponibile atât mecanismele ptmx, cât și cele openpty, se folosește ptmx (POSIX).
Grupuri de opțiuni: FD,NAMED,PTY,TERMIOS
Opțiuni utile: link, openpty, wait-slave, mode, user, group
Vezi și: UNIX-LISTEN, PIPE, EXEC, SYSTEM

CITESTE LINIA
Utilizează GNU readline și istoric pe stdio pentru a permite editarea și reutilizarea liniilor de intrare
(exemplu).
Din cauza restricțiilor de licențiere, caracteristica readline este dezactivată în Debian. Vedea
GANDACI.
În schimb, puteți utiliza STDIO.

SCTP-CONNECT: :
Stabilește o conexiune de flux SCTP la cea specificată [adresă IP] și
[Serviciul TCP] folosind TCP/IP versiunea 4 sau 6, în funcție de adresă
specificația, rezoluția numelui sau opțiunea pf.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,SCTP,CHILD,RETRY
Opțiuni utile: bind, pf, connect-timeout, tos, mtudiscover, sctp-maxseg,
sctp-nodelay, nonblock, sourceport, reîncercare, readbytes
Vezi și: SCTP4-CONNECT, SCTP6-CONNECT, SCTP-LISTEN, TCP-CONNECT

SCTP4-CONECTARE: :
La fel ca SCTP-CONNECT, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4,SCTP,CHILD,RETRY

SCTP6-CONECTARE: :
La fel ca SCTP-CONNECT, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,SCTP,CHILD,RETRY

SCTP-ASCULTĂ:
Ascultă mai departe [Serviciul TCP] și acceptă o conexiune TCP/IP. Versiunea IP este
4 sau cea specificată cu opțiunea adresa pf, opțiunea socat (-4, -6), sau
variabila de mediu SOCAT_DEFAULT_LISTEN_IP. Rețineți că deschiderea acestei adrese
de obicei se blochează până când un client se conectează.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,IP6,SCTP,RETRY
Opțiuni utile: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog,
sctp-maxseg, sctp-nodelay, su, reuseaddr, reîncercați, cool-write
Vezi și: SCTP4-LISTEN, SCTP6-LISTEN, TCP-LISTEN, SCTP-CONNECT

SCTP4-ASCULTĂ:
Ca SCTP-LISTEN, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,SCTP,RETRY

SCTP6-ASCULTĂ:
Ca SCTP-LISTEN, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP6,SCTP,RETRY

PRISA-CONECTARE: : :
Creează un socket de flux utilizând primul și al doilea parametri de socket dați și
SOCK_STREAM (vezi priza man\(2)) și se conectează la adresa de la distanță. Cei doi
Parametrii socketului trebuie să fie specificați prin numere int. Consultați sistemul de operare
documentație și include fișiere pentru a găsi valorile adecvate. Adresa de la distanță
trebuie să fie reprezentarea datelor unei structuri sockaddr fără sa_family și (BSD)
componente sa_len.
Vă rugăm să rețineți că puteți utiliza - dincolo de opțiunile grupurilor specificate - și
opțiunile protocoalelor de nivel superior atunci când aplicați opțiunea socat -g.
Grupuri de opțiuni: FD,SOCKET,CHILD,RETRY
Opțiuni utile: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO

SOCKET-DATAGRAM: : : :
Creează un socket de datagramă folosind primii trei parametri de socket dați (vezi man
socket\(2)) și trimite datele de ieșire la adresa de la distanță. Cele trei prize
parametrii trebuie să fie specificați prin numere int. Consultați documentația sistemului de operare și
include fișiere pentru a găsi valorile adecvate. Adresa de la distanță trebuie să fie datele
reprezentarea unei structuri sockaddr fără sa_family și (BSD) sa_len
componente.
Vă rugăm să rețineți că puteți utiliza - dincolo de opțiunile grupurilor specificate - și
opțiunile protocoalelor de nivel superior atunci când aplicați opțiunea socat -g.
Grupuri de opțiuni: FD,SOCKET,RANGE
Opțiuni utile: bind, range, setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: UDP-DATAGRAM, IP-DATAGRAM, SOCKET-SENDTO, SOCKET-RECV, SOCKET-RECVFROM

PRISE-ASCULTARE: : :
Creează un socket de flux utilizând primul și al doilea parametri de socket dați și
SOCK_STREAM (vezi priza man\(2)) și așteaptă pornirea conexiunilor de intrare
adresa-locală. Cei doi parametri de socket trebuie să fie specificați prin numere int.
Consultați documentația sistemului de operare și includeți fișiere pentru a găsi valorile adecvate. The
local-address trebuie să fie reprezentarea datelor unei structuri sockaddr fără
sa_family și (BSD) componente sa_len.
Vă rugăm să rețineți că puteți utiliza - dincolo de opțiunile grupurilor specificate - și
opțiunile protocoalelor de nivel superior atunci când aplicați opțiunea socat -g.
Grupuri de opțiuni: FD,SOCKET,LISTEN,RANGE,CHILD,RETRY
Opțiuni utile: setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO,
SOCKET-SENDTO

SOCKET-RECV: : : :
Creează un socket folosind cei trei parametri de socket dați (vezi man socket\(2)) și
îl leagă de . Primește datele care sosesc. Cei trei parametri trebuie să
fi specificat prin numere int. Consultați documentația sistemului de operare și includeți fișierele la
găsiți valorile adecvate. Adresa locală trebuie să fie reprezentarea datelor a
structura sockaddr fără componente sa_family și (BSD) sa_len.
Grupuri de opțiuni: FD,SOCKET,RANGE
Opțiuni utile: range, setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: UDP-RECV, IP-RECV, UNIX-RECV, SOCKET-DATAGRAM, SOCKET-SENDTO,
PRISA-RECVFROM

SOCKET-RECVFROM: : : :
Creează un socket folosind cei trei parametri de socket dați (vezi man socket\(2)) și
îl leagă de . Primește datele care sosesc și trimite răspunsurile înapoi către
expeditor. Primii trei parametri trebuie specificați ca numere int. Consulta
documentația sistemului de operare și includeți fișiere pentru a găsi valorile adecvate. The
local-address trebuie să fie reprezentarea datelor unei structuri sockaddr fără
sa_family și (BSD) componente sa_len.
Grupuri de opțiuni: FD,SOCKET,CHILD,RANGE
Opțiuni utile: furk, ​​range, setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: UDP-RECVFROM, IP-RECVFROM, UNIX-RECVFROM, SOCKET-DATAGRAM, SOCKET-SENDTO,
PRISA-RECV

SOCKET-SENDTO: : : :
Creează un socket utilizând cei trei parametri de socket dați (vezi man socket\(2)).
Trimite date de ieșire la adresa dată și primește răspunsuri. Cei trei
parametrii trebuie să fie specificați ca numere int. Consultați documentația sistemului de operare și
include fișiere pentru a găsi valorile adecvate. Adresa de la distanță trebuie să fie datele
reprezentarea unei structuri sockaddr fără sa_family și (BSD) sa_len
componente.
Grupuri de opțiuni: FD,SOCKET
Opțiuni utile: bind, setsockopt-int, setsockopt-bin, setsockopt-string
Vezi și: UDP-SENDTO, IP-SENDTO, UNIX-SENDTO, SOCKET-DATAGRAM, SOCKET-RECV
PRISA-RECVFROM

SOCKS4: : :
Se conectează prin [adresă IP] către [Adresă IPv4] activată [TCP
service], folosind protocolul Socks versiunea 4 peste IP versiunea 4 sau 6, în funcție de
specificarea adresei, rezoluția numelui sau opțiunea pf (exemplu).
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,SOCKS4,RETRY
Opțiuni utile: socksuser, socksport, sourceport, pf, retry
Vezi și: SOCKS4A, PROXY, TCP

SOCKS4A: : :
ca SOCKS4, dar folosește versiunea 4a a protocolului șosete, lăsând astfel rezoluția numelui de gazdă
la serverul de șosete.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,SOCKS4,RETRY

Stderr Utilizează descriptorul de fișier 2.
Grupuri de opțiuni: FD (TERMIOS,REG,SOCKET)
Vezi și: FD

Stdin Utilizează descriptorul de fișier 0.
Grupuri de opțiuni: FD (TERMIOS,REG,SOCKET)
Opțiuni utile: readbytes
Vezi și: FD

STDIUM Utilizează descriptorul de fișier 0 pentru citire și 1 pentru scriere.
Grupuri de opțiuni: FD (TERMIOS,REG,SOCKET)
Opțiuni utile: readbytes
Vezi și: FD

Stdout Utilizează descriptorul de fișier 1.
Grupuri de opțiuni: FD (TERMIOS,REG,SOCKET)
Vezi și: FD

SISTEM:
Bifurcă un proces secundar care stabilește comunicarea cu procesul său părinte și
invocă programul specificat cu system() . Vă rugăm să rețineți că
[șir] nu trebuie să conțină „,” sau „!!”, și este posibil ca meta caracterele shell-ului să fie nevoite
fi protejat. După începerea cu succes a programului, SOCAT scrie date în stdin al
proces și citește din stdout-ul său.
Grupuri de opțiuni: FD,SOCKET,EXEC,FORK,TERMIOS
Opțiuni utile: path, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, pipe, sigint, sigquit
Vezi și: EXEC

TCP: :
Se conectează la [Serviciul TCP] activat [Adresă IP] folosind TCP/IP versiunea 4 sau 6
în funcție de specificația adresei, rezoluția numelui sau opțiunea pf.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,TCP,RETRY
Opțiuni utile: crnl, bind, pf, connect-timeout, tos, mtudiscover, mss, nodelay,
nonblock, sourceport, reîncercare, readbytes
Vezi și: TCP4, TCP6, TCP-LISTEN, UDP, SCTP-CONNECT, UNIX-CONNECT

TCP4: :
La fel ca TCP, dar acceptă doar protocolul IPv4 (exemplu).
Grupuri de opțiuni: FD,SOCKET,IP4,TCP,RETRY

TCP6: :
La fel ca TCP, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,TCP,RETRY

TCP-LISTEN:
Ascultă mai departe [Serviciul TCP] și acceptă o conexiune TCP/IP. Versiunea IP este
4 sau cea specificată cu opțiunea adresa pf, opțiunea socat (-4, -6), sau
variabila de mediu SOCAT_DEFAULT_LISTEN_IP. Rețineți că deschiderea acestei adrese
de obicei se blochează până când un client se conectează.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,IP6,TCP,RETRY
Opțiuni utile: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog, mss,
su, reuseaddr, retry, cool-write
Vezi și: TCP4-LISTEN, TCP6-LISTEN, UDP-LISTEN, SCTP-LISTEN, UNIX-LISTEN,
OPENSSL-ASCULTARE, TCP-CONECTARE

TCP4-ASCULTĂ:
La fel ca TCP-LISTEN, dar acceptă doar protocolul IPv4 (exemplu).
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,TCP,RETRY

TCP6-ASCULTĂ:
La fel ca TCP-LISTEN, dar acceptă doar protocolul IPv6.
Opțiune suplimentară utilă: ipv6only
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP6,TCP,RETRY

TUN[: / ]
Creează un dispozitiv Linux TUN/TAP și, opțional, îi atribuie adresa și masca de rețea
dat de parametri. Interfața de rețea rezultată este aproape gata de utilizare de către
alte procese; socat își servește „partea de sârmă”. Această adresă necesită citire și scriere
acces la dispozitivul de clonare a tunelului, de obicei /dev/net/tun , precum și permisiunea
pentru a seta niște ioctl()-uri. Opțiune ff-up is necesar la imediat activa il
interfață!
Grupuri de opțiuni: FD,NAMED,OPEN,TUN
Opțiuni utile: iff-up, tun-device, tun-name, tun-type, iff-no-pi
Vezi și: ip-recv

UDP: :
Se conectează la [Serviciul UDP] activat [Adresă IP] utilizând UDP/IP versiunea 4 sau 6
în funcție de specificația adresei, rezoluția numelui sau opțiunea pf.
Vă rugăm să rețineți că, datorită proprietăților protocolului UDP, nu există o conexiune reală
stabilit; datele trebuie trimise pentru „conectare” la server și nu la sfârșitul fișierului
starea poate fi transportata.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6
Opțiuni utile: ttl, tos, bind, sourceport, pf
Vezi și: UDP4, UDP6, UDP-LISTEN, TCP, IP

UDP4: :
La fel ca UDP, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4

UDP6: :
La fel ca UDP, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6

UDP-DATAGRAM: :
Trimite date de ieșire la adresa specificată, care poate fi în special o difuzare
sau adresa multicast. Pachetele care sosesc pe soclul local sunt verificate pentru
portul de la distanță corect și dacă adresele lor sursă se potrivesc cu opțiunile RANGE sau TCPWRAP.
Acest tip de adresă poate fi utilizat, de exemplu, pentru implementarea simetrică sau asimetrică
comunicații broadcast sau multicast.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,RANGE
Opțiuni utile: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-membership, ttl, tos, sourceport, pf
Vezi și: UDP4-DATAGRAM, UDP6-DATAGRAM, UDP-SENDTO, UDP-RECVFROM, UDP-RECV,
UDP-CONNECT, UDP-LISTEN, IP-DATAGRAM

UDP4-DATAGRAM: :
La fel ca UDP-DATAGRAM, dar acceptă doar protocolul IPv4 (exemplu1, exemplu2).
Grupuri de opțiuni: FD,SOCKET,IP4, RANGE

UDP6-DATAGRAM: :
La fel ca UDP-DATAGRAM, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,RANGE

UDP-LISTEN:
Așteaptă să sosească un pachet UDP/IP [Serviciul UDP] și „se conectează” înapoi la
expeditor. Versiunea IP acceptată este 4 sau cea specificată cu opțiunea pf. Vă rog
rețineți că, datorită proprietăților protocolului UDP, nu se stabilește o conexiune reală; date
trebuie să sosească mai întâi de la egal și nicio condiție de sfârșit de fișier nu poate fi transportată.
Rețineți că deschiderea acestei adrese de obicei blochează până când un client se conectează.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,IP6
Opțiuni utile: furcă, legare, gamă, pf
Vezi și: UDP, UDP4-LISTEN, UDP6-LISTEN, TCP-LISTEN

UDP4-ASCULTĂ:
Ca UDP-LISTEN, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP4

UDP6-ASCULTĂ:
Ca UDP-LISTEN, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,LISTEN,CHILD,RANGE,IP6

UDP-SENDTO: :
Comunică cu priza peer specificată, definită de [Serviciul UDP] activat
[Adresă IP], folosind UDP/IP versiunea 4 sau 6, în funcție de adresă
specificația, rezoluția numelui sau opțiunea pf. Trimite pachete către și primește
numai pachetele din acel soclu peer. Această adresă implementează în mod eficient o datagramă
client. Funcționează bine cu aplicațiile socat UDP-RECVFROM și UDP-RECV.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6
Opțiuni utile: ttl, tos, bind, sourceport, pf
Vezi și: UDP4-SENDTO, UDP6-SENDTO, UDP-RECVFROM, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-SENDTO

UDP4-SENDTO: :
La fel ca UDP-SENDTO, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4

UDP6-SENDTO: :
La fel ca UDP-SENDTO, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6

UDP-RECVFROM:
Creează un socket UDP pornit [Serviciul UDP] utilizând UDP/IP versiunea 4 sau 6, în funcție
pe optiunea pf. Primește un pachet de la un peer nespecificat și poate trimite unul sau
mai multe pachete de răspuns la acel egal. Acest mod este deosebit de util cu opțiunea de furcă
unde fiecare pachet care sosește - de la colegii arbitrari - este gestionat de propriul său sub
proces. Acest lucru permite un comportament similar cu serverele tipice bazate pe UDP, cum ar fi ntpd sau
numit. Această adresă funcționează bine cu aplicațiile de adresă socat UDP-SENDTO.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,CHILD,RANGE
Opțiuni utile: fork, ttl, tos, bind, sourceport, pf
Vezi și: UDP4-RECVFROM, UDP6-RECVFROM, UDP-SENDTO, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-RECVFROM, UNIX-RECVFROM

UDP4-RECVFROM:
La fel ca UDP-RECVFROM, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4,CHILD,RANGE

UDP6-RECVFROM:
La fel ca UDP-RECVFROM, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,CHILD,RANGE

UDP-RECV:
Creează un socket UDP pornit [Serviciul UDP] utilizând UDP/IP versiunea 4 sau 6, în funcție
pe optiunea pf. Primește pachete de la mai mulți colegi nespecificați și îmbină
date. Nu sunt posibile răspunsuri. Funcționează bine cu, de exemplu, adresa socat UDP-SENDTO
colegii; se comportă similar cu un server syslog.
Grupuri de opțiuni: FD,SOCKET,IP4,IP6,RANGE
Opțiuni utile: fork, pf, bind, sourceport, ttl, tos
Vezi și: UDP4-RECV, UDP6-RECV, UDP-SENDTO, UDP-RECVFROM, UDP-CONNECT, UDP-LISTEN,
IP-RECV, UNIX-RECV

UDP4-RECV:
La fel ca UDP-RECV, dar acceptă doar protocolul IPv4.
Grupuri de opțiuni: FD,SOCKET,IP4,RANGE

UDP6-RECV:
La fel ca UDP-RECV, dar acceptă doar protocolul IPv6.
Grupuri de opțiuni: FD,SOCKET,IP6,RANGE

UNIX-CONNECT:
Se conectează la presupunând că este un socket de domeniu UNIX. Dacă nu
există, aceasta este o eroare; dacă nu este un socket de domeniu UNIX, acesta este un
eroare; dacă este un socket de domeniu UNIX, dar niciun proces nu ascultă, acesta este
o eroare.
Grupuri de opțiuni: FD,SOCKET,NAMED,RETRY,UNIX
) Opțiuni utile: bind
Vezi și: UNIX-LISTEN, UNIX-SENDTO, TCP

UNIX-LISTEN:
Ascultă mai departe utilizând un socket de flux de domeniu UNIX și acceptă o conexiune.
Dacă există și nu este un socket, aceasta este o eroare. Dacă există
și este un socket de domeniu UNIX, legarea la adresa eșuează (utilizați opțiunea
deconectați-devreme!). Rețineți că deschiderea acestei adrese blochează de obicei până la un client
conectează. Începând cu versiunea socat 1.4.3, intrarea în sistemul de fișiere este eliminată
când această adresă este închisă (dar vezi opțiunea unlink-close) (exemplu).
Grupuri de opțiuni: FD,SOCKET,NAMED,LISTEN,CHILD,RETRY,UNIX
Opțiuni utile: fork, umask, mode, user, group, unlink-early
Vezi și: UNIX-CONNECT, UNIX-RECVFROM, UNIX-RECV, TCP-LISTEN

UNIX-SENDTO:
Comunică cu priza peer specificată, definită de [ ] presupunând că este
un socket de datagramă de domeniu UNIX. Trimite și primește pachete de la acesta
numai priza peer. Vă rugăm să rețineți că ar putea fi necesar să legați priza locală
la o adresă (de ex. /tmp/sock1, care nu trebuie să existe înainte). Acest tip de adresă
funcționează bine cu aplicațiile de adresă socat UNIX-RECVFROM și UNIX-RECV.
Grupuri de opțiuni: FD,SOCKET,NAMED,UNIX
Opțiuni utile: legați
Vezi și: UNIX-RECVFROM, UNIX-RECV, UNIX-CONNECT, UDP-SENDTO, IP-SENDTO

UNIX-RECVFROM:
Creează un socket de datagramă de domeniu UNIX [ ]. Primește un pachet și poate
trimite unul sau mai multe pachete de răspuns la acel peer. Acest mod este deosebit de util
cu opțiunea de furcă unde fiecare pachet care sosește - de la colegii arbitrari - este gestionat de
propriul său subproces. Această adresă funcționează bine cu aplicațiile de adresă socat UNIX-SENDTO.
Grupuri de opțiuni: FD,SOCKET,NAMED,CHILD,UNIX
Opțiuni utile: furcă
Vezi și: UNIX-SENDTO, UNIX-RECV, UNIX-LISTEN, UDP-RECVFROM, IP-RECVFROM

UNIX-RECV:
Creează un socket de datagramă de domeniu UNIX [ ]. Primește pachete de la mai multe
colegii nespecificați și îmbină datele. Nu sunt posibile răspunsuri. Poate fi, de exemplu,
adresată de către socat UNIX-SENDTO adresa colegilor. Se comportă similar cu un syslog
Server. Grupuri de opțiuni: FD,SOCKET,NAMED,UNIX
Vezi și: UNIX-SENDTO, UNIX-RECVFROM, UNIX-LISTEN, UDP-RECV, IP-RECV

UNIX-CLIENT:
Comunică cu priza peer specificată, definită de [ ] presupunând că este
un socket de domeniu UNIX. Mai întâi încearcă să se conecteze și, dacă nu reușește, presupune că este
un soclu de datagramă, care acceptă astfel ambele tipuri.
Grupuri de opțiuni: FD,SOCKET,NAMED,UNIX
Opțiuni utile: legați
Vezi și: UNIX-CONNECT, UNIX-SENDTO, GOPEN

REZUMAT-CONECTARE:

REZUMAT-ASCULTARE:

REZUMAT-SENDTO:

REZUMAT-RECVDIN:

REZUMAT-RECV:

REZUMAT-CLIENT:
Adresele ABSTRACT sunt aproape identice cu adresele UNIX aferente, cu excepția
că nu se adresează socket-urilor bazate pe sisteme de fișiere, ci unui domeniu UNIX alternativ
spatiu de adresare. Pentru a arhiva acest lucru, șirurile de adrese de socket sunt prefixate cu „\0”
intern. Această caracteristică este disponibilă (doar?) pe Linux. Grupurile de opțiuni sunt aceleași
ca și în cazul adreselor UNIX aferente, cu excepția faptului că adresele ABSTRACT nu sunt
membru al grupului NAMED.

ADRESA OPŢIUNI


Opțiunile de adresă pot fi aplicate la specificațiile de adrese pentru a influența procesul de
deschiderea adreselor și proprietăților canalelor de date rezultate.

Din motive tehnice, nu orice opțiune poate fi aplicată fiecărui tip de adresă; de exemplu,
aplicarea unei opțiuni socket la un fișier obișnuit va eșua. Pentru a prinde cele mai multe combinații inutile
încă din faza deschisă, conceptul de opțiune Grupuri a fost introdus. Fiecare opțiune
aparține unuia sau mai multor grupuri de opțiuni. Opțiunile pot fi utilizate numai cu tipuri de adrese care
acceptă cel puțin unul dintre grupurile lor de opțiuni (dar vezi opțiunea -g).

Opțiunile de adresă au tipuri de date cărora trebuie să se conformeze valorile lor. Fiecare opțiune de adresă
constă doar dintr-un cuvânt cheie sau un cuvânt cheie urmat de „=valoare”, unde valoarea trebuie să se conformeze
tipul de opțiuni. Unele opțiuni de adresă manipulează parametrii apelurilor de sistem; de exemplu,
opțiunea de sincronizare setează indicatorul O_SYNC cu apelul open(). Alte opțiuni provoacă un sistem sau
apel la bibliotecă; de exemplu, cu opțiunea `ttl=value' setsockopt(fd, SOL_IP, IP_TTL, value,
se aplică apelul sizeof(int)). Alte opțiuni setate intern SOCAT variabilele care sunt utilizate
în timpul transferului de date; de exemplu, `crnl' cauzează conversii explicite de caractere. Câteva opțiuni
au implementări mai complexe; de exemplu, su-d (substuser-delayed) întreabă un utilizator și
informațiile grupului, le stochează și le aplică mai târziu după un posibil apel chroot().

Dacă unei adrese sunt date mai multe opțiuni, secvența acestora în specificația adresei
nu are (aproape) nici un efect asupra succesiunii de executare/aplicare a acestora. In schimb, SOCAT are
construit într-o opțiune fază model care încearcă să aducă opțiunile într-o ordine utilă. niste
opțiunile există în diferite forme (de exemplu, deconectare, deconectare-devreme, deconectare-întârziere) pentru a controla
momentul executării lor.

Dacă aceeași opțiune este specificată de mai multe ori în cadrul unei specificații de adresă, cu
valori egale sau diferite, efectul depinde de tipul de opțiune. Opțiuni care au ca rezultat
Apelurile de funcții precum setsockopt() provoacă mai multe invocări. Cu opțiuni setate
parametrii pentru un apel necesar, cum ar fi open() sau setați steaguri interne, valoarea ultimului
apariția opțiunii este eficientă.

Existența sau semantica multor opțiuni depinde de sistem. Socat de obicei NU
încercați să emulați funcțiile libc sau kernel lipsă, acesta oferă doar o interfață pentru
sistemul de bază. Deci, dacă unui sistem de operare îi lipsește o funcție, opțiunea aferentă este
pur și simplu nu este disponibil pe această platformă.

Următoarele paragrafe prezintă doar opțiunile de adrese mai comune. Pentru mai mult
referință cuprinzătoare și pentru a găsi informații despre numele opțiunilor canonice, nume de alias,
fazele de opțiuni, iar platformele vezi fișierul xio.ajutor.

FD opțiune grup

Acest grup de opțiuni conține opțiuni care sunt aplicate unui descriptor de fișier în stil UN*X, nr
indiferent cum a fost generat. Pentru că toate actuale SOCAT tipurile de adrese sunt descriptor de fișier
pe baza, aceste opțiuni pot fi aplicate la orice adresă.
Notă: Unele dintre aceste opțiuni sunt, de asemenea, membre ale unui alt grup de opțiuni, care oferă
un alt mecanism, care nu este bazat pe fd. Pentru aceste opțiuni, depinde de tipul real de adresă
și opțiunile sale grupează mecanismul utilizat. Al doilea mecanism, care nu se bazează pe fd este
prioritizate.

cloexec=
Setează indicatorul FD_CLOEXEC cu apelul de sistem fcntl() la valoare . Dacă este setat,
descriptorul de fișier este închis la apelurile la funcția familiei exec(). Socat mânerele interne
acest steag pentru fd-urile pe care le controlează, deci în majoritatea cazurilor nu va fi nevoie să aplicați
această opțiune.

setlk Încearcă să seteze o blocare discreționară de scriere a întregului fișier folosind fcntl(fd,
F_SETLK, ...) apel de sistem. Dacă fișierul este deja blocat, acest apel are ca rezultat un
eroare. Pe Linux, când permisiunile pentru fișiere pentru grup sunt „S” (gx,g+s) și
sistemul de fișiere este montat local cu opțiunea „mand”, blocarea este obligatorie, adică
împiedică alte procese să deschidă fișierul.

setlkw Încearcă să seteze o blocare discreționară de scriere în așteptare pentru întregul fișier folosind
fcntl(fd, F_SETLKW, ...) apel de sistem. Dacă fișierul este deja blocat, acest apel
blocuri. Consultați opțiunea setlk pentru informații despre a face această blocare obligatorie.

setlk-rd
Încearcă să seteze o blocare discreționară de citire a întregului fișier folosind fcntl(fd,
F_SETLK, ...) apel de sistem. Dacă fișierul este deja blocat la scriere, rezultă acest apel
într-o eroare. Consultați opțiunea setlk pentru informații despre a face această blocare obligatorie.

setlkw-rd
Încearcă să seteze o blocare discreționară de așteptare pentru citire pentru întregul fișier folosind
fcntl(fd, F_SETLKW, ...) apel de sistem. Dacă fișierul este deja blocat la scriere, aceasta
blocuri de apeluri. Consultați opțiunea setlk pentru informații despre a face această blocare obligatorie.

turmă-ex
Încearcă să seteze o blocare exclusivă de blocare a consilierii la fișier folosind flock (fd,
LOCK_EX) apel de sistem. Socat se blochează în acest apel dacă fișierul este blocat de altul
proces.

turmă-ex-nb
Încearcă să seteze un blocaj de consiliere exclusiv neblocant pentru fișier folosind flock (fd,
LOCK_EX|LOCK_NB) apel de sistem. Dacă fișierul este deja blocat, rezultă această opțiune
o eroare.

turmă-sh
Încearcă să seteze o blocare de blocare a consilierii partajate la fișier folosind flock (fd,
LOCK_SH) apel de sistem. Socat se blochează în acest apel dacă fișierul este blocat de altul
proces.

turmă-sh-nb
Încearcă să seteze un blocaj de consiliere partajat nonblocant la fișier folosind flock (fd,
LOCK_SH|LOCK_NB) apel de sistem. Dacă fișierul este deja blocat, rezultă această opțiune
o eroare.

bloca Setează o blocare de blocare a fișierului. Utilizează mecanismul setlk sau flock în funcție de
disponibilitatea pe platforma respectivă. Dacă ambele sunt disponibile, varianta POSIX
(setlkw) este folosit.

utilizator=
Setează (proprietar) pârâului. Dacă adresa este membru al NAMED
grup de opțiuni, SOCAT folosește apelul de sistem chown() după deschiderea fișierului sau legarea
la socket-ul domeniului UNIX (condiție de cursă!). Fără intrare în sistemul de fișiere, SOCAT seturi
utilizatorul fluxului folosind apelul de sistem fchown(). Aceste apeluri ar putea necesita
privilegiul root.

utilizator-întârziere=
Setează proprietarul fd la cu apelul de sistem fchown() după deschidere sau
conectarea canalului. Acest lucru este util numai pentru intrările din sistemul de fișiere.

grup=
Setează a pârâului. Dacă adresa este membră a opțiunii NAMED
grup, SOCAT folosește apelul de sistem chown() după deschiderea fișierului sau legarea la
Socket de domeniu UNIX (condiție de cursă!). Fără intrare în sistemul de fișiere, SOCAT setează
grup al fluxului cu apelul de sistem fchown(). Aceste apeluri pot necesita grup
privilegiul de membru sau root.

grup-tarziu=
Setează grupul fd la cu apelul de sistem fchown() după deschidere sau
conectarea canalului. Acest lucru este util numai pentru intrările din sistemul de fișiere.

mod=
Setează [mode_t] (permisiuni) fluxului. Dacă adresa este membră a
grupul de opțiuni NAMED și folosește apelul open() sau creat(), se aplică modul
cu acestea. Dacă adresa este membră a grupului de opțiuni NAMED fără a le folosi
apeluri de sistem, SOCAT folosește apelul de sistem chmod() după deschiderea intrării sistemului de fișiere
sau legarea la socket-ul domeniului UNIX (condiție de cursă!). In caz contrar, SOCAT setează
modul fluxului folosind fchmod() . Aceste apeluri pot necesita proprietate sau root
privilegiu.

perm-tarziu=
Setează permisiunile fd la valoare [mode_t] folosind sistemul fchmod().
apel după deschiderea sau conectarea canalului. Acest lucru este util numai pe sistemul de fișiere
intrări.

anexează=
Scrie întotdeauna datele la sfârșitul actual al fișierului. Dacă adresa este membră a OPEN
grup de opțiuni, SOCAT folosește indicatorul O_APPEND cu apelul de sistem open() (exemplu).
In caz contrar, SOCAT aplică apelul fcntl(fd, F_SETFL, O_APPEND).

nonblock=
Încearcă să deschidă sau să utilizeze fișierul în modul neblocant. Singurele sale efecte sunt că
apelul connect() al adreselor TCP nu blochează, iar deschiderea unei conducte numite pentru
citirea nu blochează. Dacă adresa este membră a grupului de opțiuni OPEN, SOCAT
folosește indicatorul O_NONBLOCK cu apelul de sistem open(). In caz contrar, SOCAT aplică
fcntl(fd, F_SETFL, O_NONBLOCK) apel.

binar Deschide fișierul în modul binar pentru a evita conversiile implicite ale terminatorului de linie
(Cygwin).

a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. Deschide fișierul în modul text pentru a forța conversiile implicite ale terminatorului de linie (Cygwin).

nu moşteni
Nu păstrează acest fișier deschis într-un proces generat (Cygwin).

rece-scrie
Este ușor atunci când scrierea eșuează cu EPIPE sau ECONNRESET și înregistrează mesajul cu
a observa nivel în loc de eroare. Acest lucru împiedică completarea fișierului jurnal
mesaje de eroare inutile când socat este folosit ca server de volum mare sau proxy unde
clienții abandonează adesea conexiunea.
Această opțiune este experimentală.

capăt-închidere
Schimbă metoda (în funcție de adresă) de a încheia o conexiune pentru a închide
descriptori de fișiere. Acest lucru este util atunci când conexiunea urmează să fie reutilizată sau partajată
cu alte procese (exemplu).
În mod normal, conexiunile prize vor fi încheiate cu închidere(2) care pune capăt
socket chiar dacă este partajat de mai multe procese. închide(2) „deconectează” priza
din proces, dar îl menține activ atâta timp cât mai există link-uri de la alții
procese.
În mod similar, atunci când o adresă de tip EXEC sau SYSTEM este terminată, socat o va face de obicei
omorâți în mod explicit subprocesul. Cu această opțiune, va închide fișierul
descriptori.

inchide-niciuna
Schimbă metoda (în funcție de adresa) de a închide partea de scriere a a
conexiune pentru a nu face nimic.

închide
Schimbă metoda (în funcție de adresa) de a închide partea de scriere a a
conexiune la oprire\(fd, SHUT_WR). Este util doar cu prize.

închis-închis
Schimbă metoda (în funcție de adresa) de a închide partea de scriere a a
conexiune a închide\(fd).

închis-nul
Când o adresă indică EOF, SOCAT va trimite un pachet de dimensiune zero la scriere
canalul celeilalte adrese pentru a transfera condiția EOF. Acest lucru este util cu UDP
și alte protocoale de datagramă. A fost testat împotriva netcat și socat cu opțiune
nul-eof.

nul-eof
În mod normal SOCAT va ignora pachetele goale (sarcină utilă de dimensiune zero) care sosesc pe datagramă
prize, astfel încât să supraviețuiască scanărilor de porturi. Cu această opțiune SOCAT interpretează gol
pachete de datagrame ca indicator EOF (vezi shut-null).

ioctl-void=
Apelează ioctl() cu valoarea cererii ca al doilea argument și NULL ca al treilea argument.
Această opțiune permite utilizarea ioctls care nu sunt implementate în mod explicit în socat.

ioctl-int= :
Apelează ioctl() cu valoarea cererii ca al doilea argument și valoarea întreagă ca
al treilea argument.

ioctl-intp= :
Apelează ioctl() cu valoarea cererii ca al doilea argument și un pointer către
valoare întreagă ca al treilea argument.

ioctl-bin= :
Apelează ioctl() cu valoarea cererii ca al doilea argument și un pointer către data dată
valoarea datelor ca al treilea argument. Aceste date trebuie specificate în formă.

ioctl-string= :
Apelează ioctl() cu valoarea cererii ca al doilea argument și un pointer către data dată
șir ca al treilea argument. formă.

NUMIT opțiune grup

Aceste opțiuni funcționează pentru intrările din sistemul de fișiere.
Vedeți și opțiunile utilizator, grup și mod.

utilizator-devreme=
Schimbă (proprietar) intrării sistemului de fișiere înainte de a o accesa, utilizând
apel de sistem chown(). Acest apel poate necesita privilegii de root.

grup-devreme=
Schimbă a intrării sistemului de fișiere înainte de a o accesa, folosind chown()
apel de sistem. Acest apel poate necesita apartenența la grup sau privilegiul root.

perm-devreme=
Schimbă [mode_t] al intrării din sistemul de fișiere înainte de a o accesa, folosind
apel de sistem chmod(). Acest apel poate necesita drept de proprietate sau privilegii de root.

umask=
Setează umask-ul procesului la [mode_t] înainte de a accesa sistemul de fișiere
intrare (utilă cu socketurile de domeniu UNIX!). Acest apel ar putea afecta totul în continuare
operațiuni ale SOCAT proces!

deconectare-devreme
Deconectează (elimină) fișierul înainte de a-l deschide și chiar înainte de a aplica utilizatorul devreme
etc

deconectez Deconectează (elimină) fișierul înainte de a-l accesa, dar după user-early etc.

deconectare-întârziere
Deconectează (elimină) fișierul după deschidere pentru a-l face inaccesibil pentru alții
procesele după o scurtă condiție de cursă.

deconectare-închidere
Elimină intrarea în sistemul de fișiere cu adrese la închiderea adresei. Pentru conducte denumite,
ascultând socket-uri de domeniu Unix și legăturile simbolice ale adreselor pty, implicit
este 1; pentru fișiere create, fișiere deschise, fișiere deschise generice și domeniul client Unix
socket-uri, implicit este 0.

OPEN opțiune grup

Opțiunile de grup OPEN permit setarea steaguri cu apelul de sistem open(). De exemplu, opțiunea
`creat' setează steag-ul O_CREAT.
Vezi, de asemenea, opțiunile anexate și nonblock.

creat=
Creează fișierul dacă nu există (exemplu).

dsync=
Blochează apelurile write() până când metainfo este scris fizic pe media.

excl=
Cu opțiunea creat, dacă fișierul există, aceasta este o eroare.

fişier mare=
Pe sistemele pe 32 de biți, permite un fișier mai mare de 2^31 de octeți.

noatime
Setează opțiunile O_NOATIME, astfel încât citirile să nu schimbe marcajul de timp al accesului.

noctty=
Nu face din acest fișier terminalul de control.

nofollow=
Nu urmează legături simbolice.

nshare=
Nu permite partajarea acestui fișier cu alte procese.

rshare=
Nu permite altor procese să deschidă acest fișier pentru scriere.

rsync=
Blochează write() până când metainformația este scrisă fizic pe media.

sincronizare=
Blocează write() până când datele sunt scrise fizic pe suport.

rdonly=
Deschide fișierul numai pentru citire.

greșit=
Deschide fișierul doar pentru scriere.

trunchi Trunchiază fișierul la dimensiunea 0 în timpul deschiderii acestuia.

REG și BLK opțiune grup

Aceste opțiuni sunt de obicei aplicate unui descriptor de fișier UN*X, dar semantica lor face
sens numai pe un fișier care acceptă acces aleatoriu.

cauta=
Aplică lseek(fd, , SEEK_SET) (sau lseek64 ) apel de sistem, astfel
poziționând indicatorul fișierului absolut către [off_t sau off64_t]. Vă rugăm să rețineți
că o valoare lipsă este implicit 1, nu 0.

seek-cur=
Aplică lseek(fd, , SEEK_CUR) (sau lseek64 ) apel de sistem, astfel
poziționând indicatorul fișierului [off_t sau off64_t] octeți în raport cu acesta
poziţia curentă (care este de obicei 0). Vă rugăm să rețineți că o valoare lipsă este implicită
1, nu 0.

seek-end=
Aplică lseek(fd, , SEEK_END) (sau lseek64 ) apel de sistem, prin urmare
poziționând indicatorul fișierului [off_t sau off64_t] octeți relativ la
fișierele sfârșitul curent. Vă rugăm să rețineți că o valoare lipsă este implicit 1, nu 0.

ftruncate=
Se aplică ftruncate(fd, ) (sau ftruncate64 dacă este disponibil) apel de sistem, astfel
trunchierea fișierului la poziție [off_t sau off64_t]. Vă rugăm să rețineți că a
valoarea lipsă este implicit 1, nu 0.

secrm=

unrm=

compr=

ext2-sync=

imuabil=

ext2-apend=

nodump=

ext2-noatime=

jurnal-date=

notail=

dirsync=
Aceste opțiuni modifică atributele non-standard ale fișierelor pe sistemele de operare și pe fișiere
sisteme care acceptă aceste caracteristici, cum ar fi Linux cu ext2fs, ext3fs sau reiserfs.
Consultați man 1 chattr pentru informații despre aceste opțiuni. Vă rugăm să rețineți că ar putea exista
o condiție de concurență între crearea fișierului și aplicarea acestor opțiuni.

PROCESUL opțiune grup

Opțiunile acestui grup modifică proprietățile procesului în loc să afecteze doar o singură dată
canal. Pentru adresele EXEC și SYSTEM și pentru adresele de tip LISTEN și CONNECT cu
opțiunea FORK, aceste opțiuni se aplică proceselor secundare în loc de procesului socat principal.

chroot=
Efectuează o operație chroot() la după procesarea adresei
(exemplu). Acest apel poate necesita privilegii de root.

chroot-devreme=
Efectuează o operație chroot() la înainte de a deschide adresa. Acest apel
ar putea necesita privilegii de root.

setgid=
Schimbă primarul a procesului după procesarea adresei. Acest apel
ar putea necesita privilegii de root. Vă rugăm să rețineți că această opțiune nu elimină altele
privilegii legate de grup.

setgid-devreme=
La fel ca setgit, dar se efectuează înainte de a deschide adresa.

setuid=
Schimbă (proprietar) procesului după procesarea adresei. Acest apel
ar putea necesita privilegii de root. Vă rugăm să rețineți că această opțiune nu elimină grupul
privilegii aferente. Verificați dacă opțiunea se potrivește mai bine nevoilor dvs.

setuid-devreme=
Ca setuid, dar se efectuează înainte de a deschide adresa.

su=
Schimbă (proprietar) și grupuri ale procesului după procesarea adresei
(exemplu). Acest apel poate necesita privilegii de root.

su-d=
Nume scurt pentru substuser-delayed. Schimbă (proprietar) și grupuri de
proces după procesarea adresei (exemplu). Utilizatorul și grupurile sale sunt
regăsit înainte un posibil chroot() . Acest apel poate necesita privilegii de root.

setpgid=
Face din procesul un membru al grupului de procese specificat . Dacă nicio valoare nu este
dat, sau dacă valoarea este 0 sau 1, procesul devine liderul unui nou proces
grup.

setsid Face din procesul liderul unei noi sesiuni (exemplu).

CITESTE LINIA opțiune grup

Din cauza restricțiilor de licențiere, caracteristica readline este dezactivată în Debian (vezi BUGS).
Aceste opțiuni se aplică tipului de adresă readline.

istorie=
Citește și scrie istoricul de la/la (exemplu).

fara indemn
Începând cu versiunea 1.4.0, socat în mod implicit încearcă să determine un prompt - adică atunci
trecut la apelul readline - prin amintirea ultimei linii incomplete a
ieșire. Cu această opțiune, socat nu transmite un prompt pentru readline, așa că începe
editarea liniilor în prima coloană a terminalului.

noecho=
Specifică un model obișnuit pentru un prompt care împiedică următoarea linie de introducere
de a fi afișat pe ecran și de a fi adăugat la istoric. Indemnul
este definit ca textul care a fost trimis la adresa readline după ultima
caracter newline și înainte ca un caracter de intrare să fie introdus. Modelul este obișnuit
expresie, de exemplu „^[Pp]assword:.*$” sau „([Uu]ser:|[Pp]assword:)”. Vedeți regex\(7)
pentru detalii. (exemplu)

prompt=
Transmite șirul ca prompt la funcția readline. readline imprimă acest prompt
când pășim prin istorie. Dacă acest șir se potrivește cu un prompt constant emis
printr-un program interactiv pe cealaltă adresă socat, aspectul coerent și senzația poate
fi arhivat.

APLICARE opțiune grup

Acest grup conține opțiuni care funcționează la nivel de date. Rețineți că aceste opțiuni se aplică numai
la datele „brute” transferate de socat, dar nu la datele de protocol utilizate de adrese precum
PROXY.

cr Convertește caracterul implicit de terminare a liniei NL („\n”, 0x0a) în/din CR („\r”,
0x0d) când scrieți/citiți pe acest canal.

crnl Convertește caracterul implicit de terminare a liniei NL („\n”, 0x0a) în/din CRNL
("\r\n", 0x0d0a) când scrieți/citiți pe acest canal (exemplu). Notă: socat
pur și simplu elimina toate caracterele CR.

ignoreeof
Când apare EOF pe acest canal, SOCAT îl ignoră și încearcă să citească mai multe date (cum ar fi
„coada -f”) (exemplu).

readbytes=
SOCAT citește doar atât de mulți octeți de la această adresă (adresa oferă doar atât de mulți
octeți pentru transfer și se preface că este la EOF după aceea). Trebuie să fie mai mare decât 0.

lockfile=
Dacă fișierul de blocare există, se iese cu eroare. Dacă fișierul de blocare nu există, îl creează și
continuă, deconectează fișierul de blocare la ieșire.

waitlock=
Dacă fișierul de blocare există, așteptați până când dispare. Când fișierul de blocare nu există,
îl creează și continuă, deconectează fișierul de blocare la ieșire.

scăpare=
Specifică codul numeric al unui caracter care declanșează EOF pe fluxul de intrare. Aceasta
este util cu un terminal în modul brut (exemplu).

PRIZĂ opțiune grup

Aceste opțiuni sunt destinate tuturor tipurilor de socket-uri, de exemplu IP sau domeniul UNIX. Majoritatea sunt
aplicat cu un apel setsockopt().

lega=
Leagă socket-ul la adresa dată de socket folosind apelul de sistem bind(). Forma
de depinde de domeniul prizei: IP4 și IP6 permit forma
[nume gazdă|adresă gazdă][:(serviciu|port)] (exemplu), socketurile de domeniu UNIX necesită
.

connect-timeout=
Anulați încercarea de conectare după [timeval] cu starea de eroare.

so-bindtodevice=
Leagă soclul de dat . Această opțiune poate necesita root
privilegiu.

difuza
Pentru soclurile de datagramă, permite trimiterea către adrese de difuzare și primirea pachetelor
adresate adreselor de difuzare.

depana Activează depanarea socketului.

nu traseu
Comunică numai cu colegii conectați direct, nu folosește routere.

ține în viață
Permite trimiterea de keepalives pe socket.

zăbovi=
Blochează shutdown() sau close() până când transferurile de date s-au terminat sau sunt date
timeout [int] a expirat.

oobinline
Plasează date în afara benzii în fluxul de date de intrare.

prioritate=
Setează protocolul definit [ ] pentru pachetele de ieșire.

rcvbuf=
Setează dimensiunea buffer-ului de recepție după apelul socket() la [int]. Cu
Socket-uri TCP, această valoare corespunde dimensiunii maxime a ferestrei socket-ului.

rcvbuf-tarzie=
Setează dimensiunea buffer-ului de recepție atunci când priza este deja conectată
[int]. Cu socket-urile TCP, această valoare corespunde ferestrei maxime a socket-ului
mărimea.

rcvlowat=
Specifică numărul minim de octeți recepționați [int] până când stratul socket va fi
transmiteți datele din buffer către SOCAT.

rcvtimeo=
Setează timeout-ul de recepție [timeval].

reutilizareaddr
Permite altor prize să se lege la o adresă, chiar dacă părți din aceasta (de exemplu, local
port) sunt deja utilizate de SOCAT (exemplu).

sndbuf=
Setează dimensiunea buffer-ului de trimitere după apelul socket() la [int].

sndbuf-tarzie=
Setează dimensiunea buffer-ului de trimitere când soclul este conectat [int].

sndlowat=
Specifică numărul minim de octeți din bufferul de trimitere până la nivelul socketului
va trimite datele către [int].

sndtimeo=
Setează timpul de expirare a trimiterii la secunde [timeval].

pf=
Forțează utilizarea versiunii sau a protocolului IP specificat. poate fi ceva
cum ar fi „ip4” sau „ip6”. Valoarea rezultată este folosită ca prim argument pentru socket()
sau apeluri socketpair(). Această opțiune afectează rezoluția adresei și cerințele
sintaxa opțiunilor de legare și interval.

tip=
Setează tipul de socket, specificat ca al doilea argument pentru socket() sau
socketpair() apelează la [int]. Rezoluția adresei nu este afectată de acest lucru
opțiune. Sub Linux, 1 înseamnă socket orientat pe flux, 2 înseamnă soclu pentru datagramă și
3 înseamnă priză brută.

prototip
Setează protocolul socket-ului, specificat ca al treilea argument pentru socket() sau
socketpair() apelează la [int]. Rezoluția adresei nu este afectată de
această opțiune. 6 înseamnă TCP, 17 înseamnă UDP.

so-timpul de timp
Setează opțiunea socket SO_TIMESTAMP. Acest lucru permite primirea și înregistrarea
mesaje auxiliare de marcaj temporal.

setsockopt-int= : :
Invocă setsockopt() pentru soclul cu parametrii dați. se folosește level [int].
ca al doilea argument pentru setsockopt() și specifică stratul, de exemplu SOL_TCP pentru TCP (6
pe Linux), sau SOL_SOCKET pentru stratul de socket (1 pe Linux). optname [int] este
al treilea argument pentru setsockopt() și spune ce opțiune de socket trebuie setată. Pentru
numerele reale pe care ar putea fi necesar să căutați fișierele includ adecvate ale dvs
sistem. Al 4-lea parametru setsockopt(), valoarea [int], este transmis funcției per
pointer, iar pentru lungimea parametrului sizeof\(int) este luat implicit.

setsockopt-bin= : :
Ca setsockopt-int, dar trebuie furnizat în format dalan și specifică an
secvență arbitrară de octeți; parametrul lungime este derivat automat din
de date.

setsockopt-string= : :
Ca setsockopt-int, dar trebuie să fie un șir. Acest șir este trecut la
funcția cu caracter nul final, iar parametrul lungime este automat
derivate din date.

UNIX opțiune grup

Aceste opțiuni se aplică adreselor bazate pe domeniul UNIX.

unix-tightsocklen=[0|1]
La operațiunile cu socket, transmiteți o lungime a adresei de socket care nu include întregul
struct sockaddr_un record dar (pe lângă alte componente) doar partea relevantă a
numele fișierului sau șirul abstract. Implicit este 1.

IP4 și IP6 opțiune Grupuri

Aceste opțiuni pot fi utilizate cu prize bazate pe IPv4 și IPv6.

tos=
Setează câmpul TOS (tip de serviciu) al pachetelor de ieșire la [octet] (vezi RFC
791).

ttl=
Setează câmpul TTL (time to live) al pachetelor de ieșire la [octet].

ip-opțiuni=
Setează opțiuni IP, cum ar fi rutarea sursei. Trebuie dat în formă binară, recomandat
formatul este un „x” urmat de un număr par de cifre hexadecimale. Această opțiune poate
poate fi folosit de mai multe ori, datele sunt atașate. De exemplu, pentru a vă conecta la gazda 10.0.0.1 prin
un gateway folosind o rută sursă liberă, utilizați gateway-ul ca parametru de adresă și
setați o rută sursă liberă folosind opțiunea ip-options=x8307040a000001 .
Opțiunile IP sunt definite în RFC 791.

mtudiscover=<0|1|2>
Este nevoie de 0, 1, 2 pentru a nu folosi niciodată calea MTU descoperă pe acest socket.

ip-pktinfo
Setează opțiunea socket IP_PKTINFO. Acest lucru permite primirea și înregistrarea documentelor auxiliare
mesaje care conțin adresa de destinație și interfața (Linux) (exemplu).

ip-recverr
Setează opțiunea socket IP_RECVERR. Acest lucru permite primirea și înregistrarea datelor auxiliare
mesaje care conțin informații detaliate despre eroare.

ip-recvopts
Setează opțiunea socket IP_RECVOPTS. Acest lucru permite primirea și înregistrarea IP-ului
opțiuni mesaje auxiliare (Linux, *BSD).

ip-recvtos
Setează opțiunea socket IP_RECVTOS. Acest lucru permite primirea și înregistrarea TOS (tip
of service) mesaje auxiliare (Linux).

ip-recvttl
Setează opțiunea socket IP_RECVTTL. Acest lucru permite primirea și înregistrarea TTL (time
a trăi) mesaje auxiliare (Linux, *BSD).

ip-recvdstaddr
Setează opțiunea socket IP_RECVDSTADDR. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin adresa de destinație (*BSD) (exemplu).

ip-recvif
Setează opțiunea socket IP_RECVIF. Acest lucru permite primirea și înregistrarea interfeței
mesaje auxiliare (*BSD) (exemplu).

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=
Face socketul membru al grupului de multicast specificat. Acesta este doar momentan
implementat pentru IPv4. Opțiunea preia adresa IP a grupului multicast și
informații despre interfața de rețea dorită. Cea mai comună sintaxă este prima,
în timp ce celelalte sunt disponibile numai pe sistemele care furnizează struct mreqn (Linux).
Indicii interfețelor de rețea active pot fi afișați folosind utilitarul procan.

ip-multicast-if=
Specifică numele de gazdă sau adresa interfeței de rețea care va fi utilizată pentru multicast
trafic.

ip-multicast-loop=
Specifică dacă traficul multicast de ieșire ar trebui să se întoarcă la interfață.

ip-multicast-ttl=
Setează TTL-ul utilizat pentru traficul multicast de ieșire. Implicit este 1.

res-debug

res-aaonly

res-usevc

res-primar

res-igntc

re-recurs

res-defnames

res-stayopen

res-dnsrch
Aceste opțiuni stabilesc steagurile opțiunii de rezoluție (rezoluție nume) corespunzătoare.
Adăugați „=0” pentru a șterge o opțiune implicită. Consultați man resolver\(5) pentru mai multe informații despre
aceste opțiuni. Notă: aceste opțiuni sunt valabile numai pentru adresa la care sunt aplicate
la.

IP6 opțiune grup

Aceste opțiuni pot fi utilizate numai pe socket-uri bazate pe IPv6. Consultați opțiunile IP pentru opțiunile care pot
să fie aplicat atât la socket-urile IPv4, cât și la IPv6.

ipv6only=
Setează opțiunea socket IPV6_V6ONLY. Dacă 0, stiva TCP va accepta, de asemenea
conexiuni folosind protocolul IPv4 pe același port. Valoarea implicită depinde de sistem.

ipv6-recvdstopts
Setează opțiunea socket IPV6_RECVDSTOPTS. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin opțiunile de destinație.

ipv6-recvhoplimit
Setează opțiunea socket IPV6_RECVHOPLIMIT. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin hoplimit.

ipv6-recvhopopts
Setează opțiunea socket IPV6_RECVHOPOPTS. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin opțiunile hop.

ipv6-recvpktinfo
Setează opțiunea socket IPV6_RECVPKTINFO. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin adresa de destinație și interfața.

ipv6-unicast-hops=link(TYPE_INT)( )
Setează opțiunea socket IPV6_UNICAST_HOPS. Aceasta setează limita numărului de hop (TTL) pentru
pachetele unicast de ieșire.

ipv6-recvrthdr
Setează opțiunea socket IPV6_RECVRTHDR. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin informații de rutare.

ipv6-tclass
Setează opțiunea socket IPV6_TCLASS. Aceasta stabilește clasa de transfer de ieșire
pachete.

ipv6-recvtclass
Setează opțiunea socket IPV6_RECVTCLASS. Acest lucru permite primirea și înregistrarea
mesaje auxiliare care conțin clasa de transfer.

TCP opțiune grup

Aceste opțiuni pot fi aplicate socket-urilor TCP. Ele funcționează prin invocarea setsockopt() cu
parametrii corespunzători.

plută Nu trimite pachete mai mici decât MSS (dimensiunea maximă a segmentului).

amâna-accepta
În timp ce ascultă, acceptă conexiuni numai când au sosit datele de la peer.

keepcnt=
Setează numărul de livelive înainte de a închide priza la [int].

keepidle=
Setează timpul de inactivitate înainte de a trimite primul keepalive către [int].

keepintvl=
Setează intervalul dintre două keepalives la [int].

linger2=
Setează timpul pentru a menține priza în stare FIN-WAIT-2 la [int].

mss=
Setează MSS (dimensiunea maximă a segmentului) după apelul socket() la [int]. Acest
valoarea este apoi propusă peer-ului cu pachetul SYN sau SYN/ACK (exemplu).

mss-tarzie=
Setează MSS-ul prizei după ce conexiunea a fost stabilită la [int].

fără întârziere
Dezactivează algoritmul Nagle pentru măsurarea RTT (timpul dus-întors).

rfc1323
Activează opțiunile RFC1323 TCP: scară de fereastră TCP, măsurarea timpului dus-întors (RTTM),
și protejați împotriva numerelor de secvență înfășurate (PAWS) (AIX).

stdurg Activează gestionarea pointerului urgent (AIX) conform RFC1122.

syncnt=
Setează numărul maxim de retransmite SYN în timpul conectării la [int].

md5sig Permite generarea de rezumate MD5 pe pachete (FreeBSD).

noopt Dezactivează utilizarea opțiunilor TCP (FreeBSD, MacOSX).

fără împingere setează opțiunea socket TCP_NOPUSH (FreeBSD, MacOSX).

sac-invalid
Dezactivează utilizarea caracteristicii de confirmare selectivă (OpenBSD).

activarea semnăturii
Permite generarea de rezumate MD5 pe pachete (OpenBSD).

abort-threshold=
Setează timpul de așteptare pentru un răspuns de la egal la o conexiune stabilită
(HP-UX).

conn-abort-threshold=
Setează timpul de așteptare pentru un răspuns al serverului în timpul conectării inițiale
(HP-UX).

keepinit
Setează timpul de așteptare pentru un răspuns al serverului în timpul conectării\() înainte de a da
sus. Valoare în jumătate de secunde, implicit este 150 (75s) (Tru64).

labe Activează funcția „protejare împotriva numerelor de secvență împachetate” (Tru64).

sackena
Permite recunoașterea selectivă (Tru64).

tsoptena
Activează opțiunea de marcare a timpului care permite recalcularea RTT pe conexiunile existente
(Tru64).

SCTP opțiune grup

Aceste opțiuni pot fi aplicate socket-urilor de flux SCTP.

sctp-nodelay
Setează opțiunea socket SCTP_NODELAY care dezactivează algoritmul Nagle.

sctp-maxseg=
Setează opțiunea socket SCTP_MAXSEG la [int]. Se propune apoi această valoare
către peer-ul cu pachetul SYN sau SYN/ACK.

UDP, TCP, și SCTP opțiune Grupuri

Aici găsim opțiuni care au legătură cu mecanismul portului de rețea și astfel pot fi utilizate
cu adrese de client și server UDP, TCP și SCTP.

sourceport=
Pentru conexiunile TCP și UDP de ieșire (client), setează sursa folosind o
apel suplimentar bind(). Cu adresele de ascultare TCP sau UDP, socat se oprește imediat
conexiunea dacă clientul nu folosește acest port sursă (exemplu).

lowport
Conexiunile TCP și UDP de ieșire (client) cu această opțiune folosesc o aleatorie nefolosită
port sursă între 640 și 1023 incl. Pe sistemele de operare din clasa UNIX, aceasta
necesită privilegii de root și indică astfel că procesul client este autorizat
prin rădăcina locală. TCP și UDP ascultă adresele cu această opțiune imediat oprită
conexiunea dacă clientul nu folosește un port sursă <= 1023. Acest mecanism poate
acordați autorizație limitată în anumite circumstanțe.

SOCKS opțiune grup

Când utilizați adrese de tip SOCKS, pot fi setate unele opțiuni specifice pentru șosete.

socksport= serviciu>
Ignoră serviciul implicit „socks” sau portul 1080 pentru portul server socks cu
.

socksuser=
Trimite [șir] în câmpul nume de utilizator către serverul de șosete. Implicit este
numele de utilizator actual ($LOGNAME sau $USER) (exemplu).

HTTP opțiune grup

Opțiuni care pot fi furnizate cu adrese de tip HTTP. Singura adresă HTTP în prezent
implementat este conectarea proxy.

proxyport= serviciu>
Ignoră portul implicit HTTP proxy 8080 cu .

ignorecr
Protocolul HTTP necesită utilizarea CR+NL ca terminator de linie. Când un server proxy
încalcă acest standard, este posibil ca socat să nu-și înțeleagă răspunsul. Această opțiune direcționează
socat să interpreteze NL ca terminator de linie și să ignore CR în răspuns.
Cu toate acestea, socat trimite CR+NL către proxy.

proxyauth= :
Furnizați autentificare „de bază” serverului proxy. Argumentul opțiunii este
utilizat cu un antet „Proxy-Authorization: Base” în formă codificată base64.
Notă: numele de utilizator și parola sunt vizibile pentru fiecare utilizator de pe computerul local din
lista proceselor; numele de utilizator și parola sunt transferate pe serverul proxy necriptate
(codificat în bază64) și ar putea fi adulmecat.

rezolvă
În mod implicit, socat trimite proxy-ului o solicitare CONNECT care conține ținta
nume de gazdă. Cu această opțiune, socat rezolvă numele de gazdă local și trimite IP-ul
abordare. Vă rugăm să rețineți că, conform RFC 2396, rezoluția de nume este doar IPv4
adresele este implementat.

GAMA opțiune grup

Aceste opțiuni verifică dacă unui client care se conectează ar trebui să i se acorde acces. Ele pot fi aplicate
la ascultarea și recepția prizelor de rețea. Opțiunile tcp-wrappers se încadrează în acest grup.

interval=
După acceptarea unei conexiuni, testează dacă peer-ul se află în interior gamă. Pentru IPv4
adrese, domeniul de adrese ia forma adresa/biți, de exemplu 10.0.0.0/8, sau
adresa:mască, de exemplu 10.0.0.0:255.0.0.0 (exemplu); pentru IPv6, este
[adresă-ip6/biți], de exemplu [::1/128]. Dacă adresa clientului nu se potrivește, SOCAT
emite un avertisment și continuă să asculte/ să primească.

tcpwrap[= ]
Utilizează biblioteca libwrap (tcpd) a lui Wietse Venema pentru a determina dacă clientul este permis
a conecta. Fișierele de configurare sunt /etc/hosts.allow și /etc/hosts.deny pentru
implicit, consultați „man 5 hosts_access” pentru mai multe informații. Opționalul (tip
șir) este transmis în wrapper-ului ca nume de proces demon (exemplu). Dacă
omis, numele de bază al invocării socats (argv[0]) este trecut. Dacă ambele tcpwrap
și opțiunile de gamă sunt aplicate unei adrese, ambele condiții trebuie să fie îndeplinite
permite conexiunea.

permit-tabel=
Preia fișierul specificat în loc de /etc/hosts.allow.

deny-table=
Preia fișierul specificat în loc de /etc/hosts.deny.

tcpwrap-etc=
Caută hosts.allow și hosts.deny în directorul specificat. Este suprascris de
opțiuni hosts-allow și hosts-deny.

ASCULTA opțiune grup

Opțiuni specifice prizelor de ascultare.

restante=
Setează valoarea backlog transmisă cu apelul de sistem listen() către [int].
Valoarea implicită este 5.

max-copii=
Limitează numărul de procese copil concurente [int]. Implicit nu este limită.

COPIL opțiune grup

Opțiuni pentru adrese cu conexiuni multiple prin procese copil.

furculiţă După stabilirea unei conexiuni, își gestionează canalul într-un proces copil și păstrează
procesul părinte încearcă să producă mai multe conexiuni, fie prin ascultare, fie
prin conectarea într-o buclă (exemplu).
OPENSSL-CONNECT și OPENSSL-LISTEN diferă în ceea ce privește de fapt când furcă copilul:

furci OPENSSL-LISTEN înainte strângerea de mână SSL, în timp ce OPENSSLSSL-CONNECT se bifurcă
după aceea. Opțiunile RETRY și FOREVER nu sunt moștenite de procesul copil.
Pe unele sisteme de operare (de exemplu FreeBSD) această opțiune nu funcționează pentru UDP-LISTEN
adrese.

EXEC opțiune grup

Opțiuni pentru adresele care invocă un program.

cale=
Supliniază variabila de mediu PATH pentru căutarea programului cu .
Această valoare $PATH este eficientă și în procesul copil.

Logare Prefixele argv[0] pentru apelul execvp() cu „-”, făcând astfel un shell să se comporte ca
shell de conectare.

FORK opțiune grup

Adresele EXEC sau SYSTEM invocă un program folosind un proces copil și transferă date între
SOCAT si programul. Mecanismul de comunicare între procese poate fi influențat cu ajutorul
următoarele opțiuni. În mod implicit, un socketpair() este creat și atribuit stdin și stdout
al procesului copil, în timp ce stderr este moștenit de la SOCAT proces și copilul
procesul folosește descriptorii de fișiere 0 și 1 pentru a comunica cu procesul principal socat.

nofurk Nu forkează un subproces pentru executarea programului, în schimb apelează execvp\() sau
system\() direct din instanța socat reală. Acest lucru evită cheltuielile generale ale
un alt proces între program și egalul său, dar introduce multe
restrictii:

o această opțiune poate fi aplicată doar celui de-al doilea SOCAT adresa.

o nu poate fi aplicat unei părți a unei adrese duale.

o prima adresă socat nu poate fi OPENSSL sau READLINE

o opțiunile socat -b, -t, -D, -l, -v, -x devin inutile

o pentru ambele adrese, opțiunile ignoreeof, cr și crnl devin inutile

o pentru a doua adresă (cea cu opțiunea nofork), options append, cloexec,
flock, user, group, mode, nonblock, perm-late, setlk și setpgid nu pot fi
aplicat. Unele dintre acestea ar putea fi folosite la prima adresă.

conducte Creează o pereche de conducte fără nume pentru comunicarea între procese în loc de un socket
pereche.

openpty
Stabilește comunicarea cu subprocesul folosind un pseudo terminal creat cu
openpty() în loc de implicit (socketpair sau ptmx).

ptmx Stabilește comunicarea cu subprocesul folosind un pseudo terminal creat de
de deschidere /dev/ptmx or /dev/ptc în loc de implicit (socketpair).

pty Stabilește comunicarea cu subprocesul folosind un pseudo terminal în loc de un
pereche de prize. Creează pty-ul cu un mecanism disponibil. Dacă openpty și ptmx sunt
ambele disponibile, folosește ptmx deoarece acesta este compatibil POSIX (exemplu).

ctty Face din pty tty-ul de control al subprocesului (exemplu).

stderr Direcţionează stderr al procesului secundar către canalul său de ieşire făcând stderr un dup() de
stdout (exemplu).

fdin=
Atribuie canalul de intrare al subproceselor descriptorului său de fișier in loc de
stdin (0). Programul pornit din subproces trebuie să folosească acest fd pentru citire
datele din SOCAT (exemplu).

fdout=
Atribuie canalul de ieșire al subproceselor descriptorului său de fișier in loc de
stdout (1). Programul pornit din subproces trebuie să folosească acest fd pentru scriere
date către SOCAT (exemplu).

ofta, semn, sigquit
Are SOCAT transmite semnale de acest tip la subprocesul. Dacă nicio adresă nu are asta
opțiunea, socat se termină pe aceste semnale.

TERMIOS opțiune grup

Pentru adresele care funcționează pe un tty (de exemplu, stdio, file:/dev/tty, exec:...,pty), terminalul
parametrii definiți în mecanismul termios UN*X sunt disponibili ca opțiune de adresă
parametrii. Vă rugăm să rețineți că modificările parametrilor terminalului dvs. interactiv
rămâne efectivă după SOCATterminarea lui, așa că ar putea fi necesar să introduceți „resetare” sau „stty
sane" în shell după aceea. Pentru adresele EXEC și SYSTEM cu opțiunea PTY, acestea
opțiunile se aplică pty de către procesele copil.

b0 Deconectează terminalul.

b19200 Setează viteza liniei seriale la 19200 baud. Alte tarife sunt posibile; utilizare
ceva de genul socat -hh |grep ' b[1-9]' pentru a găsi toate vitezele acceptate de dvs
punerea în aplicare.
Notă: Pe unele sisteme de operare, este posibil ca aceste opțiuni să nu fie disponibile. Utilizați ispeed sau
ospeed în schimb.

ecou=
Activează sau dezactivează ecoul local.

iconon=
Setează sau șterge modul canonic, permițând tamponarea liniei și unele caractere speciale.

crud Setează modul brut, trecând astfel intrarea și ieșirea aproape neprocesate. Această opțiune este
învechit, utilizați opțiunea Rawer sau cfmakeraw.

mai crud Face terminalul mai brut decât opțiunea brută. Această opțiune dezactivează implicit ecoul.
(exemplu).

cfmakeraw
Setează modul brut prin invocarea cfmakeraw() sau prin simularea acestui apel. Această opțiune
dezactivează implicit ecoul.

ignbrk=
Ignoră sau interpretează caracterul BREAK (de exemplu, ^C)

brkint=

bs0

bs1

bsdly=<0|1>

clocal=

cr0
cr1
cr2
cr3

Setează întârzierea de întoarcere a căruciorului la 0, 1, 2 sau, respectiv, 3. 0 înseamnă nicio întârziere,
celelalte valori sunt dependente de terminal.

crdly=<0|1|2|3>

cread=

crtscts=

cs5
cs6
cs7
cs8

Setează dimensiunea caracterului la 5, 6, 7 sau, respectiv, 8 biți.

csize=<0|1|2|3>

cstopb=
Setează doi biți de oprire, mai degrabă decât unul.

dsusp=
Setează valoarea caracterului VDSUSP care suspendă prim-planul curent
procesează și reactivează shell-ul (toate cu excepția Linux).

echoctl=
Caractere de control Echos în notație hat (de ex. ^A)

ecou=

echok=

echoke=

echonl=

echoprt=

eof=

eol=

eol2=

sterge=

arunca=

ff0

ff1

ffdly=

flusho=

hupcl=

icrnl=

iexten=

igncr=

ignpar=

imaxbel=

inlcr=

inpck=

intr=

isig=

ispeed=
Setați rata de transmisie pentru datele primite pe această linie.
Vezi și: ospeed, b19200

istrip=

iuclc=

ixany=

ixoff=

ixon=

ucide=

următorul=

min=

nl0 Setează întârzierea pentru noua linie la 0.

nl1

nldly=

noflsh=

ocrnl=

ofdel=

ofill=

olcuc=

onlcr=

onlret=

onocr=

opost=
Activează sau dezactivează procesarea ieșirii; de exemplu, transformă NL în CR-NL.

ospeed=
Setați rata de transmisie pentru datele de ieșire pe această linie.
Vezi și: ispeed, b19200

parenb=
Activați generarea de paritate la ieșire și verificarea parității pentru intrare.

parmrk=

parodd=

pendin=

renunta=

retiparire=

normal Aduce terminalul într-o stare implicită utilă.

începe=

oprire=

susp=

swtc=

tab0

tab1

tab2

tab3

tabdly=

timp=

a opri=

vt0

vt1

vtdly=

werase=

xcase=

xtabs

i-pop-all
Cu UNIX System V STREAM, elimină toate driverele din stivă.

i-împinge=
Cu UNIX System V STREAM, împinge driverul (modulul) cu numele dat (șir)
pe stivă. De exemplu, pentru a vă asigura că un dispozitiv de caractere pe Solaris
acceptă termios etc., utilizați următoarele opțiuni:
i-pop-all,i-push=ptem,i-push=ldterm,i-push=ttcompat

PTY opțiune grup

Aceste opțiuni sunt destinate utilizării cu tipul de adresă pty.

link=
Generează o legătură simbolică care indică către pseudo terminalul real (pty). Acest
ar putea ajuta la rezolvarea problemei cu care sunt generate ptys mai mult sau mai puțin
nume imprevizibile, ceea ce face dificilă accesarea directă a pty generată de socat
automat. Cu această opțiune, utilizatorul poate specifica un punct „fix” în fișier
ierarhie care îl ajută să acceseze pty-ul propriu-zis (exemplu). Incepand cu SOCAT
versiunea 1.4.3, legătura simbolică este eliminată atunci când adresa este închisă (dar vezi
opțiunea deconectare-închidere).

așteaptă-sclav
Blochează faza deschisă până când un proces deschide partea slave a pty-ului. De obicei,
socat continuă după generarea pty-ului cu deschiderea următoarei adrese sau cu
intrarea în bucla de transfer. Cu opțiunea wait-slave, socat așteaptă până când unii
procesul deschide partea slave a pty-ului înainte de a continua. Această opțiune funcționează numai
dacă sistemul de operare oferă apelul de sistem poll(). Și depinde de un
comportament nedocumentat al lui pty, deci nu funcționează pe toate sistemele de operare. Aceasta
a fost testat cu succes pe Linux, FreeBSD, NetBSD și pe Tru64 cu openpty.

pty-interval=
Când opțiunea wait-slave este setată, socat verifică periodic starea HUP
folosind poll() pentru a afla dacă partea slave a pty-ului a fost deschisă. Sondajul implicit
intervalul este de 1s. Utilizați opțiunea pty-interval [timeval] pentru a modifica această valoare.

OPENSL opțiune grup

Aceste opțiuni se aplică tipurilor de adrese openssl și openssl-listen.

cifr=
Selectează lista de cifruri care pot fi utilizate pentru conexiune. Vezi pagina de manual
a cifrurilor, secțiunea CIFRU LISTA FORMAT, pentru informații detaliate despre sintaxă,
valorile și implicit ale .
Pot fi date mai multe șiruri de coduri, separate prin „:”. Câteva șiruri de coduri simple:

3DES Utilizează o suită de criptare cu DES triplu.

MD5 Utilizează o suită de criptare cu MD5.

aNULL Utilizează o suită de criptare fără autentificare.

NULL Nu utilizează criptarea.

HIGH Utilizează o suită de criptare cu criptare „înaltă”. Rețineți că peer-ul trebuie să sprijine
proprietatea selectată, sau negocierea va eșua.

metoda=
Setează versiunea protocolului de utilizat. Șirurile de caractere valide (fără diferențiere între majuscule și minuscule) sunt:

SSL2 Selectați versiunea 2 a protocolului SSL.

SSL3 Selectați versiunea 3 a protocolului SSL.

SSL23 Selectați cel mai bun protocol SSL sau TLS disponibil. Aceasta este implicită atunci când această opțiune
nu este furnizat.

TLS1 Selectați versiunea 1 a protocolului TLS.

TLS1.1 Selectați versiunea 1.1 a protocolului TLS.

TLS1.2 Selectați versiunea 1.2 a protocolului TLS.

DTLS1 Selectați versiunea 1 a protocolului DTLS.

verifica=
Controlează verificarea certificatului peer-ului. Implicit este 1 (adevărat). Se dezactivează verificarea
s-ar putea să vă deschidă soclul pentru toată lumea, făcând criptarea inutilă!

cert=
Specifică fișierul cu certificatul și cheia privată pentru autentificare. The
certificatul trebuie să fie în format OpenSSL (*.pem). Cu openssl-listen, folosiți acest lucru
opțiunea este foarte recomandată. Cu excepția cifrului aNULL, eroarea „fără cifruri partajate”.
va avea loc atunci când nu este dat niciun certificat.

cheie=
Specifică fișierul cu cheia privată. Cheia privată poate fi în acest fișier sau în
fișierul dat cu opțiunea cert. Partea care trebuie să demonstreze că este
proprietarul unui certificat are nevoie de cheia privată.

dhparams=
Specifică fișierul cu parametrii Diffie Hellman. Acești parametri pot fi, de asemenea
în fișierul dat cu opțiunea cert, caz în care opțiunea dhparams nu este
Necesar.

cafile=
Specifică fișierul cu certificatele de autoritate (rădăcină) de încredere. Dosarul trebuie să fie
în format PEM și ar trebui să conțină unul sau mai multe certificate. Partidul care verifică
autentificarea peer-ului său are încredere numai în certificatele care se află în acest fișier.

capath=
Specifică directorul cu certificatele de încredere (rădăcină). Directorul trebuie
conțin certificate în format PEM și hashurile acestora (consultați documentația OpenSSL)

egd=
Pe unele sisteme, openssl necesită o sursă explicită de date aleatorii. Specifică
nume de soclu unde un demon de colectare a entropiei, cum ar fi egd, furnizează date aleatorii, de ex
/dev/egd-pool.

pseudo Pe sistemele în care openssl nu poate găsi o sursă de entropie și unde nu există entropie
demonul de colectare poate fi utilizat, această opțiune activează un mecanism de furnizare
pseudoentropie. Acest lucru este arhivat luând timpul curent în microsecunde pentru
alimentarea generatorului de numere pseudoaleatoare libc cu o valoare inițială. openssl este
apoi alimentat cu ieșiri din apeluri aleatoare\().
NOTĂ: Acest mecanism nu este suficient pentru generarea de chei securizate!

comprima
Activați sau dezactivați utilizarea compresiei pentru o conexiune. Setarea acestui lucru la „niciunul”
dezactivează compresia, setarea la „auto” permite OpenSSL să aleagă cel mai bun disponibil
algoritm susținut de ambele părți. Implicit este să nu atingeți niciunul
setări legate de compresie. NOTĂ: Necesită OpenSSL 0.9.8 sau o versiune ulterioară și dezactivare
compresia cu OpenSSL 0.9.8 afectează toate conexiunile noi din proces.

nume comun=
Specificați numele comun cu care trebuie să se potrivească certificatul peer. Cu OPENSL-CONNECT
adresa aceasta suprascrie numele de gazdă sau adresa IP țintă dată; cu OPENSSL-LISTEN
acest lucru activează verificarea certificatelor de la egal la egal. Această opțiune are doar sens
când opțiunea de verificare nu este dezactivată și cifrul ales oferă un peer
certificat.

fips Activează modul FIPS dacă este compilat. Pentru informații despre implementarea criptării FIPS
standard vezi http://oss-institute.org/fips-faq.html. Acest mod ar putea necesita asta
certificatele implicate sunt generate cu o versiune a openssl compatibilă cu FIPS.
Setarea sau ștergerea acestei opțiuni pe o singură adresă socat afectează toate adresele OpenSSL
a acestui proces.

REÎNCEPE opțiune grup

Opțiuni care controlează reîncercarea unor apeluri de sistem, în special încercările de conectare.

reîncercați=
Numărul de încercări înainte ca conexiunea sau încercarea de ascultare să fie anulată. Implicit este
0, ceea ce înseamnă o singură încercare.

interval=
Timp între încercări consecutive (secunde, [timespec]). Implicit este 1 secundă.

pentru totdeauna
Efectuează un număr nelimitat de încercări de reîncercare.

TUN opțiune grup

Opțiuni care controlează adresele dispozitivelor de interfață Linux TUN/TAP.

tun-device=
Instruiește socat să ia o altă cale pentru dispozitivul de clonă TUN. Implicit este
/dev/net/tun.

tun-name=
Oferă interfeței de rețea rezultată un nume specific în locul sistemului
generat (tun0, tun1 etc.)

tun-type=[tun|tap]
Setează tipul dispozitivului TUN; utilizați această opțiune pentru a genera un dispozitiv TAP. Vezi
Linux docu pentru diferența dintre aceste tipuri. Când încercați să stabiliți o
tunel între două dispozitive TUN, tipurile lor ar trebui să fie aceleași.

dacă-nu-pi
Setează indicatorul IFF_NO_PI care controlează dacă dispozitivul include pachet suplimentar
informații din tunel. Când încercați să stabiliți un tunel între două TUN
dispozitive, aceste steaguri ar trebui să aibă aceleași valori.

ff-up Setează starea interfeței de rețea TUN UP. Recomandat cu tărie.

ff-difuzare
Setează indicatorul BROADCAST al interfeței de rețea TUN.

iff-debug
Setează flag-ul DEBUG al interfeței de rețea TUN.

iff-loopback
Setează flag-ul LOOPBACK al interfeței de rețea TUN.

iff-pointopoint
Setează indicatorul POINTOPOINT al dispozitivului TUN.

dacă nu remorci
Setează flag-ul NOTRAILERS al dispozitivului TUN.

ff-a alerga
Setează indicatorul RUNNING al dispozitivului TUN.

iff-noarp
Setează flag-ul NOARP al dispozitivului TUN.

iff-promisc
Setează flag-ul PROMISC al dispozitivului TUN.

iff-allmulti
Setează steag-ul ALLMULTI al dispozitivului TUN.

iff-master
Setează flag-ul MASTER al dispozitivului TUN.

iff-sclav
Setează flag-ul SLAVE al dispozitivului TUN.

iff-multicast
Setează steag-ul MULTICAST al dispozitivului TUN.

iff-portsel
Setează flag-ul PORTSEL al dispozitivului TUN.

iff-automedia
Setează flag-ul AUTOMEDIA al dispozitivului TUN.

ff-dinamic
Setează steag-ul DYNAMIC al dispozitivului TUN.

DATE VALORI


Această secțiune explică diferitele tipuri de date care se adresează parametrilor și opțiunilor de adresă
poate lua.

domeniu-adresă
În prezent, este implementat numai pentru IPv4 și IPv6. Vezi opțiunea de adresă „interval”

bool „0” sau „1”; dacă valoarea este omisă, se ia „1”.

byte Un număr int fără semn, citit cu strtoul() , mai mic sau egal cu UCHAR_MAX .

Linie de comanda
Un șir care specifică numele unui program și argumentele acestuia, separate prin spații unice.

date O specificație de date brute care urmează plonja sintaxă. În prezent, singura formă validă este a
șir care începe cu „x” urmat de un număr par de cifre hexadecimale, specificând a
secvență de octeți.

director
Un șir cu semantică obișnuită a numelui directorului UN*X.

facilitate
Numele unei facilitati syslog cu litere mici.

fdnum Un tip int nesemnat, citit cu strtoul() , care specifică un descriptor de fișier UN*X.

nume de fișier
Un șir cu semantică obișnuită a numelui de fișier UN*X.

grup Dacă primul caracter este o cifră zecimală, valoarea este citită cu strtoul() ca
întreg fără semn care specifică un ID de grup. În caz contrar, trebuie să fie un grup existent
nume.

int Un număr care urmează regulile funcției strtol() cu baza „0”, adică zecimală
număr, număr octal cu "0" înainte sau număr hexazecimal cu "0x". The
valoarea trebuie să se potrivească într-un C int.

interfață
Un șir care specifică numele dispozitivului unei interfețe de rețea, așa cum este arătat de ifconfig sau
procan, de exemplu „eth0”.

Adresa IP
O adresă IPv4 în notație cu numere și puncte, o adresă IPv6 în notație hexadecimal
cuprinse între paranteze sau un nume de gazdă care se rezolvă la o adresă IPv4 sau IPv6.
Exemple: 127.0.0.1, [::1], www.dest-unreach.org, dns1

Adresa IPv4
O adresă IPv4 în notație cu numere și puncte sau un nume de gazdă care se rezolvă la un IPv4
adresa.
Exemple: 127.0.0.1, www.dest-unreach.org, dns2

Adresa IPv6
O adresă iPv6 în notație hexnumere și două puncte cuprinsă între paranteze sau o
nume de gazdă care se rezolvă la o adresă IPv6.
Examples: [::1], [1234:5678:9abc:def0:1234:5678:9abc:def0], ip6name.domain.org

long Un număr citit cu strtol() . Valoarea trebuie să se încadreze într-un C lung.

lung lung
Un număr citit cu strtoll() . Valoarea trebuie să se încadreze într-un C lung.

off_t Un număr semnat care depinde de implementare, de obicei 32 de biți, citit cu strtol sau
strtoll.

off64_t
Un număr semnat depinde de implementare, de obicei 64 de biți, citit cu strtol sau
strtoll.

mode_t Un întreg fără semn, citit cu strtoul() , care specifică biții de mod (permisiune).

pid_t Un număr, citit cu strtol() , care specifică un ID de proces.

port A uint16_t (număr nesemnat pe 16 biți) care specifică un port TCP sau UDP, citit cu
strtoul() .

protocol
Un număr nesemnat de 8 biți, citit cu strtoul() .

size_t Un număr nesemnat cu limitări size_t, citit cu strtoul .

sockname
O adresă de socket. Vezi opțiunea de adresă „bind”

șir O secvență de caractere, care nu conține „\0” și, în funcție de poziția în interior
linia de comandă, „:”, „,” sau „!!”. Rețineți că ar putea fi necesar să scăpați de meta shell
caractere din linia de comandă.

Serviciu TCP
Un nume de serviciu, care nu începe cu o cifră, care este rezolvat de getservbyname() sau
un număr int nesemnat de 16 biți citit cu strtoul() .

timeval
Un float dublu care specifică secundele; numărul este mapat într-un struct timeval,
format din secunde și microsecunde.

timespec
Un float dublu care specifică secundele; numărul este mapat într-un struct timespec,
format din secunde și nanosecunde.

serviciu UDP
Un nume de serviciu, care nu începe cu o cifră, care este rezolvat de getservbyname() sau
un număr int nesemnat de 16 biți citit cu strtoul() .

nesemnat int
Un număr citit cu strtoul() . Valoarea trebuie să se potrivească într-un C unsigned int.

user Dacă primul caracter este o cifră zecimală, valoarea este citită cu strtoul() ca
întreg nesemnat care specifică un ID de utilizator. În caz contrar, trebuie să fie un nume de utilizator existent.

EXEMPLE


SOCAT - TCP4:www.domain.org:80

transferă date între STDIO (-) și o conexiune TCP4 la portul 80 al gazdei
www.domain.org. Acest exemplu are ca rezultat o conexiune interactivă similară cu telnet
sau netcat. Parametrii terminalului stdin nu sunt modificați, așa că puteți închide
releu cu ^D sau anulați-l cu ^C.

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

acesta este similar cu exemplul anterior, dar puteți edita linia curentă în a
bash like manier (READLINE) și utilizați fișierul istoric .http_history; SOCAT printuri
mesaje despre progres (-d -d). Portul este specificat de numele serviciului (www) și
sunt utilizate caractere corecte de terminare a liniei de rețea (crnl) în loc de NL.

SOCAT TCP4-ASCULTARE:www TCP4:www.domain.org:www

instalează un simplu port forwarder TCP. Cu TCP4-LISTEN ascultă pe portul local
„www” până când vine o conexiune, o acceptă, apoi se conectează la gazda de la distanță
(TCP4) și începe transferul de date. Nu va accepta oa doua conexiune.

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

Port forwarder TCP, fiecare parte legată de o altă adresă IP locală (bind). Acest
exemplu gestionează un număr aproape arbitrar de conexiuni paralele sau consecutive
prin bifurcarea unui nou proces după fiecare accept() . Oferă puțină siguranță prin
su'ing to user nobody after forking; permite doar conexiuni de la privat
10 rețea (gamă); datorită reuseaddr, permite repornirea imediată după master
terminarea procesului, chiar dacă unele prize pentru copii nu sunt complet închise.
Cu -lmlocal2, socat se înregistrează în stderr până când ajunge cu succes la bucla accept.
Înregistrările ulterioare sunt direcționate către syslog cu facilitate local2.

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

un server simplu care acceptă conexiuni (TCP4-LISTEN) și fork este un nou copil
proces pentru fiecare conexiune; fiecare copil acționează ca un singur releu. Clientul trebuie
potriviți regulile pentru numele procesului demon „script” în /etc/hosts.allow și
/etc/hosts.deny, altfel i se refuză accesul (vezi „man 5 hosts_access”). Pentru
Executând programul, copilul procesează chroot la /home/cutie cu nisip, su pentru utilizator
sandbox și apoi pornește programul /home/sandbox/bin/myscript. Socat și myscript
comunica printr-un pseudo tty (pty); stderr-ul myscript este redirecționat către stdout, deci
mesajele sale de eroare sunt transferate prin SOCAT către clientul conectat.

SOCAT EXEC:"mail.sh [e-mail protejat]",fdin=3,fdout=4 \
TCP4:mail.relay.org:25,crnl,bind=alias1.server.org,mss=512

mail.sh este un script shell, distribuit cu SOCAT, care implementează un SMTP simplu
client. Este programat să „vorbească” SMTP pe FD-urile sale 3 (in) și 4 (out). Fdinul
și opțiunile fdout spun SOCAT pentru a utiliza aceste FD-uri pentru comunicarea cu programul.
Deoarece mail.sh moștenește stdin și stdout while SOCAT nu le folosește, scriptul
poate citi un corp de e-mail din stdin. Socat face alias1 adresa sursă locală
(bind), are grijă de terminarea corectă a liniei de rețea (crnl) și trimite cel mult 512
octeți de date per pachet (mss).

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

deschide o conexiune interactivă prin linia serială, de exemplu pentru a vorbi cu un modem.
Rawer setează parametrii terminalului consolei și ai ttyS0 la valori practicabile,
crnl se convertește în caractere nou-linii corecte. evadarea permite terminarea socatului
proces cu caracter control-O.

SOCAT UNIX-LISTEN:/tmp/.X11-unix/X1,furcă \
SOCKS4:host.victim.org:127.0.0.1:6000,socksuser=nobody,sourceport=20

cu UNIX-LISTEN, SOCAT deschide un socket de domeniu UNIX care ascultă /tmp/.X11-unix/X1.
Această cale corespunde afișajului local XWindow :1 de pe computer, deci XWindow
conexiunile client la DISPLAY=:1 sunt acceptate. Socat apoi vorbește cu SOCKS4
server host.victim.org care ar putea permite conexiuni bazate pe sourceport 20 din cauza unui
Slăbiciune legată de FTP în filtrele sale IP statice. Socat se preface a fi invocat de
socksuser nimeni și solicită să fie conectat la portul loopback 6000 (doar slab
configurațiile sockd vor permite acest lucru). Deci avem o legătură cu victimele
Server XWindow și, dacă nu necesită module cookie MIT sau autentificare Kerberos,
putem începe munca. Vă rugăm să rețineți că poate exista o singură conexiune la un moment dat,
deoarece TCP poate stabili o singură sesiune cu un anumit set de adrese și porturi.

SOCAT -u /tmp/readdata,seek-end=0,ignoreeof -

acesta este un exemplu de transfer unidirecțional de date (-u). Socat transferă date de la
fișier /tmp/readdata (adresă implicită GOPEN), începând de la sfârșitul său curent
(seek-end=0 les SOCAT începeți să citiți la sfârșitul curent al fișierului; utilizați seek=0 sau nu seek
opțiunea de a citi mai întâi datele existente) într-un mod asemănător „coada -f” (ignoreeof). The
„fișier” ar putea fi, de asemenea, un socket de domeniu UNIX de ascultare (nu utilizați o opțiune de căutare
atunci).

(dormi 5; ecou PAROLA; dormi 5; ecou ls; dormi 1) |
SOCAT - EXEC:'ssh -l utilizator server',pty,setsid,ctty

EXEC'utes o sesiune ssh pe server. Folosește un pty pentru comunicarea între SOCAT și
ssh, face ca ssh să controleze tty (ctty) și face acest pty proprietarul unui nou
grup de procese (setsid), deci ssh acceptă parola de la SOCAT.

SOCAT -u TCP4-LISTEN:3334,reuseaddr,furk \
OPEN:/tmp/in.log,creat,append

implementează un simplu colector de mesaje bazat pe rețea. Pentru fiecare client care se conectează la
portul 3334, este generat un nou proces copil (opțiune furk). Toate datele trimise de către
clienții sunt atașați la fișierul /tmp/in.log. Dacă fișierul nu există, socat
creat este. Opțiunea reuseaddr permite repornirea imediată a procesului serverului.

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

generează un pseudo-dispozitiv terminal (PTY) pe client la care poate fi accesat
legătura simbolică $HOME/dev/vmodem0. O aplicație care așteaptă o linie serială sau
modemul poate fi configurat pentru utilizare $HOME/dev/vmodem0; traficul acestuia va fi direcționat către a
modemserver prin ssh unde o altă instanță socat îl conectează /dev/ttyS0.

SOCAT TCP4-LISTEN:2022,reuseaddr,furk \
PROXY:proxy:www.domain.org:22,proxyport=3128,proxyauth=user:pass

pornește un expeditor care acceptă conexiuni pe portul 2022 și le direcționează prin
demonul proxy care ascultă pe portul 3128 (proxyport) pe proxy gazdă, folosind
Metoda CONNECT, unde sunt autentificați ca „utilizator” cu „pass” (proxyauth). The
atunci proxy-ul ar trebui să stabilească conexiuni pentru a găzdui www.domain.org pe portul 22.

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

este un client OpenSSL care încearcă să stabilească o conexiune sigură la un server SSL.
Opțiunea cafile specifică un fișier care conține certificate de încredere: avem încredere în
server numai atunci când prezintă unul dintre aceste certificate și dovezi că deține
cheia privată aferentă. În caz contrar, conexiunea este întreruptă. Cu un fișier certificat
care conține certificatul de client și cheia privată asociată este specificată. Acest
este necesar în cazul în care serverul dorește o autentificare client; multe Internet
serverele nu.
Prima adresă ('-') poate fi înlocuită cu aproape orice altă adresă socat.

SOCAT OPENSSL-LISTEN:4443,reuseaddr,pf=ip4,furk,cert=server.pem,cafile=client.crt CONDUCTA

este un server OpenSSL care acceptă conexiuni TCP, prezintă certificatul de la
fișierul server.pem și obligă clientul să prezinte un certificat care este verificat
contra cafile.crt.
A doua adresă („PIPE”) poate fi înlocuită cu aproape orice altă adresă socat.
Pentru instrucțiuni despre generarea și distribuirea cheilor și certificatelor OpenSSL, consultați
documentul suplimentar socat socat-openssl.txt.

ecou |socat -u - fișier:/tmp/bigfile,create,largefile,seek=100000000000

creează un fișier rar de 100 GB; aceasta necesită un tip de sistem de fișiere care să accepte acest lucru
(ext2, ext3, reiserfs, jfs; nu minix, vfat). Operația de scriere a 1 octet ar putea
durează mult (reiserfs: câteva minute; ext2: „nu” timp), iar fișierul rezultat poate
consumă puțin spațiu pe disc doar cu inodurile sale (reiserfs: 2MB; ext2: 16KB).

SOCAT tcp-l:7777,reuseaddr,furk sistem:'filan -i 0 -s >&2',nofork

ascultă conexiunile TCP de intrare pe portul 7777. Pentru fiecare conexiune acceptată,
invocă o coajă. Acest shell are stdin-ul și stdout-ul conectat direct la TCP
priză (nofurk). Shell-ul pornește filan și îi permite să imprime adresele socket-ului
stderr (fereastra terminalului dvs.).

ecou -cel mai „\0\14\0\0\c” |socat -u - fișier:/usr/bin/squid.exe,seek=0x00074420

funcţionează ca editor binar primitiv: scrie cei 4 octeţi 000 014 000 000 în
executabil /usr/bin/squid la offset 0x00074420 (acesta este un patch din lumea reală de făcut
executabilul squid de la Cygwin rulează sub Windows, efectiv în mai 2004).

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

se conectează la un serviciu necunoscut și previne inundarea.

SOCAT -U TCP:target:9999,end-close TCP-L:8888,reuseaddr,furk

îmbină datele care sosesc din fluxuri TCP diferite pe portul 8888 într-un singur flux către
țintă: 9999. Opțiunea de închidere finală împiedică procesele secundare bifurcate de către
a doua adresă de la terminarea conexiunii partajate la 9999 (închidere\(2) doar
deconectează inodul care rămâne activ atâta timp cât procesul părinte trăiește;
oprire\(2) ar întrerupe în mod activ conexiunea).

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

trimite o difuzare către rețeaua 192.168.1.0/24 și primește răspunsurile
servere de timp acolo. Ignoră pachetele NTP de la gazde din afara acestei rețele.

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

este echivalent din punct de vedere semantic cu exemplul anterior, dar toți parametrii sunt
specificate în formă generică. valoarea 6 a setsockopt-int este valoarea Linux pentru
SO_BROADCAST.

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

trimite o difuzare către rețelele locale folosind protocolul 44. Acceptă răspunsuri de la
numai domeniul de adrese private.

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

transferă date de la stdin la adresa de multicast specificată utilizând UDP. Ambele locale
iar porturile la distanță sunt 6666. Spune interfeței eth0 să accepte și multicast
pachete ale grupului dat. Mai multe gazde din rețeaua locală pot rula acest lucru
comandă, astfel încât toate datele trimise de oricare dintre gazde vor fi primite de toate celelalte
cele. Rețineți că există multe motive posibile pentru eșec, inclusiv filtre IP,
probleme de rutare, selecție greșită a interfeței de către sistemul de operare, poduri sau a
comutator prost configurat.

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

stabilește o parte a unei rețele virtuale (dar nu private!) cu host2 unde a
ar putea rula un proces similar, cu UDP-L și adresa tun 192.168.255.2. Ei pot ajunge
reciproc folosind adresele 192.168.255.1 și 192.168.255.2. Rețineți că streaming
de exemplu. prin TCP sau SSL nu garantează păstrarea granițelor pachetelor și, prin urmare, poate
cauza pierderi de pachete.

SOCAT PTY,link=/var/run/ppp,rawer INTERFATA: hdlc0

eludează problema că pppd necesită un dispozitiv serial și, prin urmare, ar putea să nu fie
capabil să lucreze pe o linie sincronă care este reprezentată de un dispozitiv de rețea. socat
creează un PTY pentru a face pppd fericit, se leagă de interfața de rețea hdlc0 și poate
transfera date între ambele dispozitive. Folosiți pppd pe dispozitivul /var/run/ppp atunci.

SOCAT -T 1 -d -d TCP-L:10081,reuseaddr,furk,crlf SISTEM: „eco -e \"\\\"HTTP/1.0 200
OK\\\nDocumentType: text/plat\\\n\\\data:
\$\(data\)\\\nserver:\$SOCAT_SOCKADDR:\$SOCAT_SOCKPORT\\\nclient:
\$SOCAT_PEERADDR:\$SOCAT_PEERPORT\\\n\\\"\"; pisică; ecou -e \"\\\"\\\n\\\"\""

creează un server HTTP echo simplu: fiecare client HTTP care se conectează primește un HTTP valid
răspuns care conține informații despre adresa și portul clientului așa cum este văzut de
gazda serverului, adresa gazdei (care poate varia pe serverele multihomed) și
cererea originală a clientului.

SOCAT -d -d
UDP4-RECVFROM:9999,so-broadcast,so-timestamp,ip-pktinfo,ip-recverr,ip-recvopts,ip-recvtos,ip-recvttl!!-
SISTEM:'export; dormi 1 " |grep SOCAT

așteaptă un pachet UDP de intrare pe portul 9999 și tipărește variabilele de mediu
furnizate de socat. Pe sistemele bazate pe BSD trebuie să înlocuiți ip-pktinfo cu
ip-recvdstaddr,ip-recvif. Deosebit de interesant este SOCAT_IP_DSTADDR: conține
adresa țintă a pachetului care poate fi unicast, multicast sau broadcast
adresa.

DIAGNOSTIC


Socat folosește un mecanism de înregistrare care permite filtrarea mesajelor în funcție de gravitate. Severitățile
furnizate sunt mai mult sau mai puțin compatibile cu prioritatea syslog corespunzătoare. Cu unul sau până la
patru apariții ale opțiunii de linie de comandă -d, cea mai mică prioritate a mesajelor care sunt
emis poate fi selectat. Fiecare mesaj conține un singur caracter majuscul care specifică
gravitatea mesajelor (una dintre F, E, W, N, I sau D)

FATAL: Condiții care necesită încetarea necondiționată și imediată a programului.

EROARE: Condiții care împiedică procesarea corectă a programului. De obicei programul este
terminat (vezi opțiunea -s).

AVERTISMENT:
Ceva nu a funcționat corect sau este într-o stare în care este corect în continuare
prelucrarea nu poate fi garantată, dar ar putea fi posibilă.

ANUNȚ:
Acțiuni interesante ale programului, de exemplu pentru supraveghere SOCAT într-un fel de
modul server.

INFORMAȚII: Descrierea a ceea ce face programul și poate de ce se întâmplă. Permite monitorizarea
ciclurile de viață ale descriptorilor de fișiere.

DEBUG: Descrierea modului în care funcționează programul, toate apelurile de sistem sau bibliotecă și ale acestora
rezultate.

Mesajele de jurnal pot fi scrise în stderr, într-un fișier sau în syslog.

La iesire, SOCAT dă starea 0 dacă s-a încheiat din cauza EOF sau timeout de inactivitate, cu a
valoare pozitivă la eroare și cu o valoare negativă la eroare fatală.

Utilizați filan online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    NSIS: Nullsoft Scriptable Install System
    NSIS: Nullsoft Scriptable Install System
    NSIS (Nullsoft Scriptable Install
    System) este o sursă deschisă profesională
    sistem pentru a crea programe de instalare Windows. Aceasta
    este conceput pentru a fi cât mai mic și flexibil
    cat posibil...
    Descărcați NSIS: Nullsoft Scriptable Install System
  • 2
    authpass
    authpass
    AuthPass este o parolă open source
    manager cu sprijin pentru popular şi
    Keepass dovedit (kdbx 3.x ȘI kdbx 4.x...
    Descărcați authpass
  • 3
    Zabbix
    Zabbix
    Zabbix este o companie deschisă de clasă enterprise
    soluție de monitorizare distribuită la sursă
    conceput pentru a monitoriza și urmări
    performanța și disponibilitatea rețelei
    servere, dispozitive...
    Descărcați Zabbix
  • 4
    KDiff3
    KDiff3
    Acest depozit nu mai este întreținut
    și se păstrează în scop de arhivă. Vedea
    https://invent.kde.org/sdk/kdiff3 for
    cel mai nou cod și
    https://download.kde.o...
    Descărcați KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX este o interfață grafică pentru
    Încărcătorul USB al lui Waninkoko, bazat pe
    libwiigui. Permite listarea și
    lansarea de jocuri Wii, jocuri Gamecube și
    homebrew pe Wii și WiiU...
    Descărcați USBLoaderGX
  • 6
    Firebird
    Firebird
    Firebird RDBMS oferă caracteristici ANSI SQL
    și rulează pe Linux, Windows și
    mai multe platforme Unix. Caracteristici
    concurență și performanță excelente
    & putere...
    Descărcați Firebird
  • Mai mult »

Comenzi Linux

Ad