mirror of
https://github.com/AuxXxilium/arv-v-dsm.git
synced 2024-11-23 23:10:58 +07:00
fix: Port forwarding (#520)
This commit is contained in:
parent
63cac9a75e
commit
6cbe03f656
@ -4,6 +4,7 @@ set -Eeuo pipefail
|
|||||||
# Docker environment variables
|
# Docker environment variables
|
||||||
|
|
||||||
: ${DHCP:='N'}
|
: ${DHCP:='N'}
|
||||||
|
: ${HOST_PORTS:=''}
|
||||||
: ${MAC:='02:11:32:AA:BB:CC'}
|
: ${MAC:='02:11:32:AA:BB:CC'}
|
||||||
|
|
||||||
: ${VM_NET_DEV:=''}
|
: ${VM_NET_DEV:=''}
|
||||||
@ -144,8 +145,18 @@ configureNAT() {
|
|||||||
update-alternatives --set iptables /usr/sbin/iptables-legacy > /dev/null
|
update-alternatives --set iptables /usr/sbin/iptables-legacy > /dev/null
|
||||||
update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy > /dev/null
|
update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy > /dev/null
|
||||||
|
|
||||||
|
if [[ -z "$HOST_PORTS" ]] && [[ "${DISPLAY,,}" == "vnc" ]]; then
|
||||||
|
HOST_PORTS="5900"
|
||||||
|
fi
|
||||||
|
|
||||||
|
local PORT_ARGS=""
|
||||||
|
for PORT in $HOST_PORTS; do
|
||||||
|
PORT_ARGS="$PORT_ARGS ! --dport $PORT"
|
||||||
|
done
|
||||||
|
|
||||||
iptables -t nat -A POSTROUTING -o "$VM_NET_DEV" -j MASQUERADE
|
iptables -t nat -A POSTROUTING -o "$VM_NET_DEV" -j MASQUERADE
|
||||||
iptables -t nat -A PREROUTING -i "$VM_NET_DEV" -d "$IP" -p tcp -j DNAT --to "$VM_NET_IP"
|
# shellcheck disable=SC2086
|
||||||
|
iptables -t nat -A PREROUTING -i "$VM_NET_DEV" -d "$IP" -p tcp $PORT_ARGS -j DNAT --to "$VM_NET_IP"
|
||||||
iptables -t nat -A PREROUTING -i "$VM_NET_DEV" -d "$IP" -p udp -j DNAT --to "$VM_NET_IP"
|
iptables -t nat -A PREROUTING -i "$VM_NET_DEV" -d "$IP" -p udp -j DNAT --to "$VM_NET_IP"
|
||||||
|
|
||||||
if (( KERNEL > 4 )); then
|
if (( KERNEL > 4 )); then
|
||||||
|
Loading…
Reference in New Issue
Block a user