Wie richte ich eine ip-Adresse für das TUN interface auf OSX (ohne Ziel-Adresse)?
Wie richte ich eine IP-Adresse für ein TUN-interface für OSX? Ich kann nicht herausfinden, wie man eine ip-Adresse für mein interface ohne Angabe einer Ziel-IP. Ich will nicht, das zu tun - ich will mehr oder weniger bauen einen tunnel zu einer beliebigen Adresse zu einem späteren Zeitpunkt. Vor Fragen, die sind wenig hilfreich:
- Es gibt eine Frage hat eine unklare Antwort, also ich habe versucht, nach der Referenz.
- Diese Frage stellt eine Punkt-zu-Punkt-ip-Adresse für ein Gerät tun, also hat es ein Ziel, das ist genau das, was ich nicht will.
Auf der Seite für osxtuntap es sagt:
ifconfig tap0 10.1.2.3 up
Kann ich nicht machen, diese Arbeit auf OSX 10.6 für eine TUN-Schnittstelle:
$ sudo ifconfig tun0 10.1.2.3 up
ifconfig: ioctl (SIOCAIFADDR): Destination address required
Hinzufügen einer Netzmaske nicht helfen - OSX scheint die Forderung nach einem Ziel-Adresse:
$ ifconfig tun0 10.0.0.1/24 netmask 255.255.255.0
ifconfig: ioctl (SIOCAIFADDR): Destination address required
Für linux, bekomme ich wie es funktioniert. Nach auf dieser Seite, öffnen Sie() die Schnittstelle, und verwenden Sie die ip-Befehl, und dies tun, und ich habe dies getan, bevor Sie mit null Probleme:
$ ip link set tun0 up
$ ip addr add 10.0.0.1/24 dev tun0
Alles was ich tun möchte ist die gleiche Sache, die ich tun kann in linux.
EDIT:
Schreibe ich ein wenig UDP-tunnel app. Etwa so:
tun1 -> udp-app #1 -> udp-tunnel -> udp-app #2 -> tun2
Wenn der udp-apps sind auf verschiedenen Computern (sagen wir, lokal und remote), würde ich gerne verknüpfen Ihre jeweiligen Bottich-Geräte mit einer ip-Adresse, so kann ich senden Sie ein Paket vom lokalen zum remote über den tunnel, indem Sie senden das Paket an die ip-Adresse des tun device an der Maschine entfernen.
Leihen mehr aus der linux-tutorial, der Autor legt ein tun device auf lokalen und remote-Mitarbeiter von ips, und führt einen einfachen tunneling-app, und dann pingt das andere Ende des Tunnels:
[remote]# ip link set tun3 up
[remote]# ip addr add 192.168.0.2/24 dev tun3
[remote]$ ./simpletun -i tun3 -s
# server blocks waiting for the client to connect
[local]# ip link set tun11 up
[local]# ip addr add 192.168.0.1/24 dev tun11
[local]$ ./simpletun -i tun11 -c 10.2.3.4
# nothing happens, but the peers are now connected
[local]$ ping 192.168.0.2
- Niemand konnte herausfinden, was der andere Kerl war bis zu. Ebenso habe ich absolut keine Idee, was Sie tun, entweder. Was versuchen Sie zu tun?
- Ich aktualisiert meine Antwort mit den konkreten Anwendungsfall werde ich nach und ein Beispiel
- warum zum Gottes Willen ist diese Frage migriert hier statt der superuser?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Standardmäßig tun-Geräte arbeiten im Schicht-3-Modus, auch bekannt als Punkt-zu-Punkt. Fragen Sie für die layer-2-Modus, der mehr ähnelt ein generisches Ethernet-device. Linux nennt diese tap-devices. In OpenBSD können Sie wechseln, ein tun device in layer-2-Modus mit "ifconfig tun0 link0". Die Macintosh-tuntaposx Treiber imitiert Linux " Gerät Schisma; öffnen Tippen Sie auf Gerät statt.
Möchten Sie vielleicht zu prüfen https://community.openvpn.net/openvpn/wiki/BridgingAndRouting, um zu bestimmen, wenn Sie wirklich wollen, Tippen Sie auf Geräte. Sie fügen hinzu, ein wenig overhead. Wenn man nur zwei Boxen passieren die IP-Pakete zwischen miteinander und keine überbrückung oder Rundfunk zu einem größeren Subnetz, Punkt-zu-Punkt sollte ausreichend sein.
Zum Beispiel, wenn Sie haben zwei Maschinen, wir label "local" mit einer LAN-IP-Adresse wie 192.168.0.12 und die anderen benennen wir "remote" mit einem LAN-IP-Adresse wie 192.168.1.14, die Sie zuweisen können, der tunnel-IP-Adressen folgendermaßen:
auf dem lokalen system, in:
auf dem remote-system. Hinweis: die umgekehrte Perspektive auf die remote-Maschine. Setzen Sie nicht Ihr Punkt-zu-Punkt-Adressen, alles auf einer vorhandenen Subnetz; es wird keine route richtig.
Ich kann es nicht genug betonen: Lesen und wieder Lesen Sie die Handbuchseiten ("man ifconfig" und "man tun kann", wahrscheinlich noch andere), bis Sie Sinn machen. Meine ifconfig obigen Beispielen unterscheiden sich möglicherweise geringfügig von Ihrem Betriebssystem.
Und für eine andere Perspektive, vielleicht schauen Sie in GRE-Tunnel Ihre Funktionalität spiegeln, was Sie beschreiben, für Ihr Programm. Aber GRE ist wahrscheinlich nicht überlebensfähig in der heutigen TCP-centric networks noch ist es eine gute Idee, aufgrund der großen Sicherheitsprobleme.
Wenn Ihr Ziel ist es, Sie zu umgehen einen übermächtigen firewall, bewusst sein, dass viele solche firewalls blockieren Sie die UDP - (und vor allem GRE) - Pakete. In einem solchen Fall, versuchen Sie SSH-tunneling-Schnittstelle zum einrichten der tun/tap-interfaces und Pakete. Erhalten Sie die Verschlüsselung und Optional Komprimierung. 🙂