Ok, som titteln antyder så vill jag kunna hosta internet spel, idag kan jag bara joina dem.
Jag har Telia ADSL och det är instoppat i en Linux RedHat 7.3 server som delar ut det till alla andra datorer (däribland min windows dator som jag vill hosta spel på) med detta script
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -d ! 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -j DROP
Någon som kan hjälpa mig och säga hur jag ska göra för att kunna hosta? Antar att jag måste göra någon portforward, men hur gör jag??
Denna rad gör att på port 27015 (Counterstrike standard)
mappas ut till 192.168.0.2
Kanske kan vara till hjälp?
Obs! Jag antar att du har två nätverkskort i datorn och att det kortet som är anslutet till internet är eth0!
27015 är för att ansluta, servern behöver öppna andra portar.. När jag varit ute med hunden och nyktrat till lite skall jag försöka svara lite bättre :)
Efter att ha provat 511 olika script så har jag hittat något som fungerar, lite moddat av mig :)
#!/bin/bash
########################
EXTERNAL_IP=XXX.XXX.XXX.XXX #Din IP adress på internet
INTERNAL_IP=192.168.0.1 #Serverns IP adress
INTERNAL_INTERFACE=eth1 #kort som går på lokala nätverket
EXTERNAL_INTERFACE=eth0 #kort som går ut på internet
INTERNAL_NETWORK=192.168.0.0/24 #Lokala nätverkets ip adresser
# extract the ips and port
NAT_EXT_PORT=$1 #Port eller port "range" som ska gälla (Detta är Parameter 1 när man startar scriptet
NAT_INT_IP=192.168.0.99 #IP Dit det ska forwardas
NAT_INT_PORT=$1 #Samma som ovan
PROTOCOL=$2 # UDP eller TCP, parameter 2 när man kör scriptet
# write the rules!
#########################
# this is the prerouting dnat
iptables -A PREROUTING -t nat -p $PROTOCOL -d $EXTERNAL_IP --dport $NAT_EXT_PORT -j DNAT --to-destination $NAT_INT_IP:$NAT_IN
T_PORT
# This allows packets from external->internal
iptables -A FORWARD -i $EXTERNAL_INTERFACE -o $INTERNAL_INTERFACE -p $PROTOCOL -d $NAT_INT_IP --dport $NAT_INT_PORT -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
# This allows packets from internal->external
iptables -A FORWARD -i $INTERNAL_INTERFACE -o $EXTERNAL_INTERFACE -p $PROTOCOL -s $NAT_INT_IP --sport $NAT_INT_PORT -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
# This enables access to the 'public' server from the internal network
iptables -t nat -A POSTROUTING -d $NAT_INT_IP -s $INTERNAL_NETWORK -p $PROTOCOL --dport $NAT_INT_PORT -j SNAT --to $INTERNAL_
IP
echo Port Forward: dnat: $EXTERNAL_IP:$NAT_EXT_PORT - $NAT_INT_IP:$NAT_INT_PORT
för att forwarda port 80 på TCP till port 80 på lokal dator 192.168.0.99 skriver man
./portforward.sh 80 tcp
och för att forwarda port 80-100 på UDP skriver man
./portforward.sh 80-100 udp
Hoppas någon mer än jag har gjädje av detta script :)
OBS! Jag vet inte hur säkerheten är med detta script, det är bara gjort för att göra en sak för MIG, forwarda portar :)
/Viktor
268 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9