Dies ist der Befehlshahn, der im kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows Online-Emulator oder MAC OS Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
Wasserhahn - eine Vorrichtung für ein BSD-Netzwerkrohr
Netzrohre 4.2
ZUSAMMENFASSUNG
Wasserhahn port (--In|--aus|--irren|--fd n)+ [--wenn] [- ausführlich] [--ruhig] [--unix]
[--Fremdhost Adr] [--Auslandshafen port ] [--localhost Adr] [--seriell] [--dämon]
[--abschalten (r | w) ] [--pidfile Dateinamen] [--noreuseaddr] [--Rückstand n]
[-[i][o][e][#3[,4[,5...]]][v][1][q][u][d][s]] [-p Auslandshafen] [-h ausländischer Gastgeber] [-H
lokaler Host] Befehl args
BESCHREIBUNG
Wasserhahn versucht, die Funktionalität von Pipes über das Netzwerk bereitzustellen. Es verhält sich wie das
Server-Ende einer Server-Client-Verbindung. Bei Verwendung mit Schlauch(1) es kann als fungieren
Ersatz für
tar -cf - . | rsh other „cd destdir; tar -xf -“
Wasserhahn und Schlauch sind besonders nützlich, wenn Sie keinen einfachen, nicht interaktiven Zugriff darauf haben
das Zielkonto (z. B. ein Root-Konto, bei dem .rhosts keine gute Idee sind).
Wasserhahn erstellt einen BSD-Socket, bindet ihn an den port in der Befehlszeile angegeben und
lauscht auf Verbindungen.
Jedes Mal Wasserhahn bekommt eine Verbindung es exec(2)s Befehl und sein args mit stdin, stdout,
stderr und/oder beliebige Dateideskriptoren umgeleitet gemäß der --In --aus --irren
--fd n Flaggen. Wasserhahn Außerdem wird die ungenutzte Hälfte der Verbindung automatisch abgeschaltet, wenn
einzige --In angegeben ist oder wenn nur --aus und / oder --irren angegeben sind. Siehe die --abschalten
Option für weitere Informationen.
OPTIONAL
Besitzt das --wenn Flag ist angegeben, Wasserhahn werden wir exec(2) die Befehl statt Gabel(2)ing und
exec(2)ing. --wenn bedeutet, dass die Netzwerkleitung nur für einen Schuss geeignet ist.
Die - ausführlich Flag gibt das an Wasserhahn sollte Informationen zu den verbindenden Hosts drucken.
Zu diesen Informationen gehören die numerische Hostadresse, Hostnamen und ausländische Portnummern.
Die --ruhig Flag gibt das an Wasserhahn sollte solche Informationen NICHT drucken. --ruhig ist das
default.
Die --unix Flag gibt an, dass die port ist keine Internet-Portnummer oder ein Dienstname,
sondern es handelt sich um einen Dateinamen für einen UNIX-Domain-Socket.
Die --Fremdhost Option gibt an, dass Faucet alle Verbindungen ablehnen soll, die nicht
komm aus dem Gastgeber Maschine. Ebenso --Auslandshafen gibt an, dass der Wasserhahn ablehnen soll
alle Verbindungen, die nicht auf ihrer lokalen Maschine an die port Argument. Das obige
Zwei Optionen ermöglichen eine einfache Form der Authentifizierung. Beachten Sie, dass auf UNIX-Systemen nur root
Binden Sie einen Socket an eine Portnummer unter 1024.
Bitte kontaktieren Sie uns, wenn Sie Probleme im Zusammenhang mit dieser Website haben oder Lassen Sie sich nicht täuschen und denken, dass dies den Wasserhahn sicher macht. Es gibt Möglichkeiten,
IP-Nummern, die seit Jahren bekannt sind (aber erst kürzlich veröffentlicht wurden). Ich denke, dass
Diese Methode ist sicher vor DNS-Spoofing, aber Sie sollten wahrscheinlich kein Spoof on in
/etc/host.conf egyébként.
--localhost gibt an, dass der Listening-Socket an einen bestimmten Internet-
Adresse auf diesem Host. Dies ist nur bei Hosts mit mehreren Internetnummern sinnvoll.
--dämon gibt an, dass der Wasserhahn vom steuernden Terminal getrennt werden soll, sobald
es hat begonnen, auf dem Socket zu lauschen. Dies geschieht mit dem Systemaufruf setsid(). Wenn
Sie haben kein Setsid auf Ihrem System, es verwendet den Standard ``alle Dateideskriptoren schließen,
ioctl TIOCNOTTY, fork() und übergeordnete Exit-Sequenz.
--abschalten wird verwendet, um die (normalerweise) bidirektionale Buchse in eine unidirektionale Buchse umzuwandeln
Wenn das „r“ vorhanden ist, dann Wasserhahn wird die Hälfte der Verbindung schließen, um sie schreibgeschützt zu machen
Socket. Wenn wir versuchen zu schreiben, schlägt dies fehl. Wenn die Remote-Verbindung versucht zu lesen,
wird den Socket als geschlossen wahrnehmen. Wenn stattdessen das `w' vorhanden ist, dann Wasserhahn wird schließen
die andere Hälfte der Verbindung, um sie zu einem Nur-Schreib-Socket zu machen. Wenn wir versuchen zu lesen,
wird den Socket als geschlossen wahrnehmen. Wenn die Remote-Verbindung versucht zu schreiben, wird sie
fehlschlagen. Das Standardverhalten besteht darin, beide Hälften offen zu lassen, jedoch das Herunterfahren der Hälfte
Die Verbindung wird automatisch durch bestimmte Kombinationen der --In, --aus und --irren
Um ihr automatisches Verhalten zu unterdrücken, können Sie (jeweils) --fd 0, --fd 1,
und --fd 2.
--abschalten kann mit einigen Internet-Servern (wie bestimmten httpds) nicht verwendet werden, weil
Sie interpretieren das Schließen einer Hälfte der Verbindung als Schließen der gesamten
Verbindung. Diese Warnung gilt für --In, --aus und --irren.
--seriell bewirkt, dass der Wasserhahn wartet, bis ein Kind fertig ist, bevor weitere akzeptiert werden
Verbindungen. Serialisierung ist eine sehr grobe Form der Verwaltung kritischer Abschnitte.
--pidfile Dateinamen Befehle Wasserhahn um seine Prozess-ID zu schreiben in Dateinamen. Das ist nützlich
Wenn der Wasserhahn Teil eines größeren Systems ist und ein Steuerungsprozess den
Wasserhahn. --pidfile ordnungsgemäß funktioniert, wenn Sie das --dämon .
Standardmäßig Wasserhahn führt a
setsockopt(fd, SOL_SOCKET, SO_REUSEADDR...)
Dies verhindert das Problem der „verwendeten Adresse“, das die Netpipes-Versionen 4.0 und „geplagt“ hat
früher. --noreuseaddr weist Faucet an, diesen Systemaufruf zu überspringen und auf die Version vor 4.1 zurückzugreifen
Verhalten. Ohne diesen Aufruf ist der Socket nicht immer für die sofortige Wiederverwendung verfügbar nach
der Wasserhahn verlässt.
--Rückstand n ermöglicht Ihnen, den zweiten Parameter für die hören(2) Systemaufruf. Die
Standard ist 5.
NEUSTE FLAGGEN
Um die Schreibanforderungen für Argumente zu reduzieren (und um dem Uralten Tribut zu zollen).
(Tradition der UNIX-Kryptotaxonomie) habe ich einige Kurzformen der Flags hinzugefügt. Hier ist ein
Korrespondenzdiagramm:
┌──────┬──────────────┐
│Kurz │Lang │
│ i │ in │
│ o │ │
│ e │ sich irren │
│ #n │ fdn │
│ v │ ausführlich │
│ 1 │ einmal │
│ q │ ruhig │
│ u │ Unix │
│ d │ Daemon │
│ s │ seriell │
│ p │ Auslandshafen │
│ h │ ausländischer Host │
│ H │ localhost │
└──────┴──────────────┘
Beispielsweise der folgende Befehl
Beispiel$ Faucet 3000 --out --verbose --once --foreignhost Client Echo Bla
könnte geschrieben werden
Beispiel$ Faucet 3000 -ov1h Client Echo Bla
Die -p, -h und -H Flags akzeptieren ein Argument, aber die Flags können in einem Argument gruppiert werden.
Sie holen sich dann die Argumente, die sie brauchen, aus der Kommandozeile in der Reihenfolge, in der die Flags
erscheinen.
Beispiel$ Wasserhahn 3000 -hpHov1 Client 2999 Beispiel-le2 Echo blah
Während jeder --fd Wortflagge erforderte einen individuellen Deskriptor, der -# Zeichenflagge kann
mehrere Deskriptoren annehmen. Die folgenden sind gleichwertig:
Beispiel$ faucet 3000 --fd 0 --fd 1 --verbose --once echo blah
Beispiel$ Wasserhahn 3000 -#0,1v --once echo blah
Beispiel$ Wasserhahn 3000 -v1#0,1 Echo blah
Beispiel$ Wasserhahn 3000 -#0,1v1 Echo bla
Beachten Sie, dass Sie bei der Verwendung der -# Zeichenflagge und die -1 Charakter
Flag im selben Argument. Denken Sie auch an die spezielle Schließung(2) Semantik von -in und
-aus.
Beispiele:
Dadurch wird auf dem lokalen Computer ein TCP-IP-Socket erstellt, der an Port 3000 gebunden ist.
Beispiel$ faucet 3000 --out --verbose tar -cf - .
Jedes Mal, wenn ein Prozess (von einer beliebigen Maschine) versucht, eine Verbindung zu Port 3000 auf diesem
Maschine die Wasserhahn Programm wird Gabel(2) ein Verfahren und das Kind wird exec(2) zu
tar -cf - .
Die --aus Option bedeutet, dass die Ausgabe des Kindprozesses umgeleitet wird in
der neue Socket abgerufen durch die nehmen sie es an.(2) anrufen. - ausführlich bedeutet, dass der Wasserhahn druckt
Informationen zu jeder neuen Verbindung.
Dadurch wird ein UNIX-Domänensocket im aktuellen Verzeichnis erstellt
Beispiel$ Wasserhahn u-socket --out --err --once --unix csh -c \
"dd if=angio.pgm | funky.perl.script"
Die --aus --irren Option bedeutet, dass stdout und stderr im Kind umgeleitet werden
Prozess. Das --wenn Option bedeutet, dass der Wasserhahn nicht Gabel(2), aber exec(2) die
Prozess, so dass nur der erste Prozess eine Verbindung zum U-Socket vor dem Wasserhahn herstellen kann
nicht mehr verfügbar ist.
Dieses Beispiel lauscht auf einem Socket, bis die erste Verbindung zustande kommt. Es erzeugt dann
eine bidirektionale Kopie, die Hose-Slave ähnelt.
Wasserhahn 3000 -1v --fd 3 sh -c 'Katze <&3 & Katze >&3 ; Sockendown 3'
Verwenden Sie Faucet online mit den Diensten von onworks.net
