Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Ich bin kein experte, aber Bhyve macht ja nicht das was Docker macht sondern eher das was Hyper-V oder Virtualbox macht.Wie wird bei Bhyve eine Port-Weiterleitung bzw. -Umleitung realisiert, wie sie bei Docker z.B. mit "port 25565:25565" realisiert wird?
So das der lokale Host-Port "25565" auf den VM-Port "25565" umgeleitet wird.
Ja. Ergänzend dazu sollte man vielleicht noch sagen, das dann auch das "Routing" eingeschaltet werden muss.Entsprechend wirst du da vermutlich etwas mit nem virtuellen netzwerk (bridge) und einem paketfilter (pf zb) selbst bauen müssen.
gateway_enable="YES"
Ja, das ist schon aktiviert. Eine Bhyve-VM läuft schon auf einer dedizierten NIC...Ja. Ergänzend dazu sollte man vielleicht noch sagen, das dann auch das "Routing" eingeschaltet werden muss.
Also sysctl
net.inet.ip.forwarding (für IPv4) bzw.
net.inet6.ip6.forwarding (für IPv6) auf 1 gesetzt werden muss.
Das kann man auch damit persistent machen, in dem man
gateway_enable="YES"
in die /etc/rc.conf einträgt
Davor graut es mir.Ich bin kein experte, aber Bhyve macht ja nicht das was Docker macht sondern eher das was Hyper-V oder Virtualbox macht.
Entsprechend wirst du da vermutlich etwas mit nem virtuellen netzwerk (bridge) und einem paketfilter (pf zb) selbst bauen müssen.
ext= "em1"
int = "tap0
set block-policy drop
set loginterface egress
set skip on lo0
match in all scrub (no-df random-id max-mss 1440)
match out on egress inet from !(egress:network) to any nat-to (egress:0)
block all
pass out quick inet
pass in on { $ext $int} inet
pass in on egress inet proto tcp from any to (egress) port { 80 443 } rdr-to 192.168.1.2
Danke!Ich gehe jetzt mal davon aus das die einfachere Option, die VM einfach direkt mit dem Netzwerk, zu verbinden mit einer eigenen IP im "richtigen" Netzwerk keine Option ist.
Ich kenn mich halt mit fw nicht aus. deshalb hätt ich pf genommen weil ich da zumindest eine Idee hab was man so machen kann, sofern der Syntax sehr ähnlich wie bei OpenBSD ist. Letztlich machst du das gleiche wie bei einem router im Netzwerk zuhause, NAT auf dem "externen" Interface und dann eine portweiterleitung auf die "intern" IP der vm.
Mal so grob von https://www.openbsd.org/faq/pf/example1.html abgekupfert könnte das:
Code:ext= "em1" int = "tap0 set block-policy drop set loginterface egress set skip on lo0 match in all scrub (no-df random-id max-mss 1440) match out on egress inet from !(egress:network) to any nat-to (egress:0) block all pass out quick inet pass in on { $ext $int} inet pass in on egress inet proto tcp from any to (egress) port { 80 443 } rdr-to 192.168.1.2
So ganz grob hinkommen denke ich - letzteres wäre dann die "Nat-Portweiterleitung".
# vi /etc/rc.conf
sshd_enable="YES"
gateway_enable="YES"
ipv6_gateway_enable="YES"
pf_enable="YES"
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
# service pf start
# service pflog start
# vi /etc/sysctl.conf
net.inet.ip.forwarding=1
net.inet6.ip6.forwarding=1
# sysctl -f /etc/sysctl.conf
# vi /etc/pf.conf
NIC_EXT="em0" # FreeBSD-Host mit IP = 192.168.1.1
NIC_INT="tap0" # Linux-VM mit IP = 192.168.1.200
#
### Rules must be in order: options, normalization, queueing, translation, filtering
rdr log on $NIC_EXT proto { tcp, udp } from any to 192.168.1.1 port 24 -> 192.168.1.200 port 22
rdr pass on $NIC_EXT proto icmp from any to 192.168.1.1 -> 192.168.1.200
set skip on lo0
#block in all
#pass out all keep state
pass out log on $NIC_EXT all
pass in all keep state
# pfctl -e ; pfctl -f /etc/pf.conf
# pfctl -s nat
rdr log on em0 inet proto tcp from any to 192.168.1.1 port = 24 -> 192.168.1.200 port 22
rdr log on em0 inet proto udp from any to 192.168.1.1 port = 24 -> 192.168.1.200 port 22
rdr pass on em0 inet proto icmp from any to 192.168.1.1 -> 192.168.1.200
# ssh -p 24 192.168.1.1
Wenn du lieber ipfw benutzt, dann mach das doch. :-)Davor graut es mir.
Ich komme wohl mit der nativen FW von FreeBSD (fw) klar aber mit "pf" dagegen nicht...
hättest Du da ein Beispiel, wie man das umsetzen müsste?
Du kannst auch die ipfw dafür nehmen. Es muss nicht die pf sein.Ich komme wohl mit der nativen FW von FreeBSD (fw)
ipfw rulenr add fwd bhyveip,25565 ip from any to myip 25565 in nic1
Das solltest Du nicht machen bzw. ist das schon durch die gateway-Option in der /etc/rc.conf abgedeckt# vi /etc/sysctl.conf
net.inet.ip.forwarding=1
net.inet6.ip6.forwarding=1
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Siehe weitere Informationen und konfiguriere deine Einstellungen