Verwenden von pfctl unter Mac OS 10.11 (El Capitan) zum Weiterleiten von Ports

9

Ich teste gerade, ob meine Entwicklungsumgebung auf dem neuen Mac OS 10.11 läuft und ob ich ein Upgrade durchführen kann, sobald es veröffentlicht wird. Auf meiner Testmaschine läuft derzeit die Beta-Vorschau 3. Alles scheint gut zu laufen.

Ich kann nur pfctl bekommen, um meine Ports weiterzuleiten. Ich verwende Vagrant und Parallels Desktop, um ein Debian-System für meinen lokalen Webserver auszuführen. Vagrant leitet Port 8080 auf dem Host zu 80 auf dem Gast weiter. Also 127.0.0.1:8080 funktioniert gut. Aber in einigen Projekten möchte ich genau die gleiche lokale Domain haben wie in der Produktion. (ohne die: 8080) Außerdem mag ich es einfach mehr. ; -)

Dafür verwende ich pfctl , um 80 auf 8080 auf dem Host weiterzuleiten. Hier sind meine Konfigurationsdateien:

~ / Portweiterleitung / pf.conf

%Vor%

~ / portweiterleitung / rules.conf

%Vor%

Um es zu aktivieren, führe ich:

%Vor%

Das gibt mir das:

%Vor%

sudo pfctl -s nat sagt:

%Vor%

Bis jetzt sieht es gut aus, denke ich. Aber es funktioniert einfach nicht.

127.0.0.1:80 - keine Verbindung 127.0.0.1:8080 - funktioniert

Ich benutze die gleichen Dateien auf Yosemite und es funktioniert gut dort.

Weiß jemand, ob es eine Änderung bei der Verwendung von pfctl gab oder wenn ich etwas falsch mache oder wenn es einen Fehler gibt, der gemeldet werden kann.

Vielen Dank

Nick

    
Dafen 20.07.2015, 13:06
quelle

1 Antwort

10

Dies gilt nur für OSX 10.11 - El Capitan - Öffentliche Beta 1

x-post von: Ссылка

In der letzten 10.11 Beta ist 127.0.0.1 blockiert. Die Lösung? Verwenden Sie 127.0.0.2. Um dies zu tun:

Fügen Sie zuerst 127.0.0.2 zum Loopback-Alias ​​hinzu sudo ifconfig lo0 alias 127.0.0.2 up

Ändern Sie Ihre pf-Regel, um den neuen Alias ​​zu verwenden. rdr pass proto tcp from any to any port 80 -> 127.0.0.2 port 8080

Über die Befehlszeile, ohne eine Datei zu verwenden:

echo "rdr pass proto tcp from any to any port {80,8080} -> 127.0.0.2 port 8080" | pfctl -Ef - & lt; - Achten Sie darauf, dieses letzte Häkchen zu addieren, Sie piping in STDIN)

    
Cory 22.07.2015, 18:00
quelle