Internet megosztás

Fórumok

Előre szólok, hogy valószínű a probléma nem haladó, viszont gondolom ezt a topikot több (linux-expert) nézi :)
én már sztem mindent kipróbáltam, de nem megy a két gép közti net megosztás.
a felállás:
debian és xp
az én gépem debianos ebben van két háló kari az egyi dhcp-ről kap ip-t ami a 160.114.41.38
a másik háló kari rögzített ip-t kap ez pedig 192.168.0.4 ennek az átjárója pedig 160.114.41.38 az xp-s gépben van egy kari aminek az ip-je 192.168.0.2 az átjárója pedig 192.168.0.4
a debianon van internet minden faxán megy de az xp-s nem kap nete sehogysem, még pingelni sem tudom és az se vissza, (nyilván xlink kábelvan a két gép közt, régebben ment vele, de újra kellett rakni a lin-t)
ezen beállítások mellett futtattam régebben egy scriptet, amit most is megtettem de nem müxik, bár míg ping nincs gondolom ez is fölösleges volt.

ifconfig:
debian:/home/pawee# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:0C:76:24:06:AF
inet addr:160.114.41.38 Bcast:160.114.41.255 Mask:255.255.255.0
inet6 addr: fe80::20c:76ff:fe24:6af/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:37425 errors:0 dropped:0 overruns:0 frame:0
TX packets:23729 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:31693917 (30.2 MiB) TX bytes:8752053 (8.3 MiB)
Interrupt:217 Base address:0xe400

eth1 Link encap:Ethernet HWaddr 00:40:C7:97:7D:4A
inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::240:c7ff:fe97:7d4a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1556 errors:3 dropped:0 overruns:0 frame:0
TX packets:307 errors:37 dropped:0 overruns:0 carrier:37
collisions:0 txqueuelen:1000
RX bytes:148684 (145.1 KiB) TX bytes:82654 (80.7 KiB)
Interrupt:177 Base address:0xe000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:95 errors:0 dropped:0 overruns:0 frame:0
TX packets:95 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:6776 (6.6 KiB) TX bytes:6776 (6.6 KiB)

sit0 Link encap:IPv6-in-IPv4
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

/etc/network/interfaces:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

auto eth0

iface eth1 inet static
address 192.168.0.4
netmask 255.255.255.0
gateway 160.114.41.38

auto eth1

auto eth0

iface eth1 inet static
address 192.168.0.4
netmask 255.255.255.0
gateway 160.114.41.38

auto eth1

Hozzászólások

és itt a script, csak nem akartam egybe:

#!/bin/sh
# készült gyorsan és javitgatva lesz sokszor: kjozsoka@freemail.hu
#
# rc.firewall-2.4
FWVER=0.001
#
# Internet megosztas teszt script
#
echo -e "\n\nAlapveto Internetmegosztas inditasa v. $FWVER..\n"
# A parancsok helye
#
#

IPTABLES=/sbin/iptables
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe
# Kulso es belso eszkozok beallitasa
#
# Ebben a peldaban "eth0" a kulso es "eth1" a belso
#
# Ha ADSL-t vagy analog modemet hasznalsz akkor valoszinuleg
# EXTIF="ppp0" kell hogy legyen
# hasznald az "ifconfig" parancsot
#
EXTIF="eth0"
INTIF="eth1"
#ONTIF="eth2"
echo " Kulso eszkoz: $EXTIF"
echo " Belso eszkoz: $INTIF"
#echo " Belso eszkoz: $ONTIF"

echo -en " modulok betoltese: "
echo " - Kernel modulok vizsgalata"
$DEPMOD -a
echo -e "----------------------------------------------------------------------\n"
echo -en "ip_tables, "
$MODPROBE ip_tables
echo -en "ip_conntrack, "
$MODPROBE ip_conntrack
echo -en "ip_conntrack_ftp, "
$MODPROBE ip_conntrack_ftp
echo -en "ip_conntrack_irc, "
$MODPROBE ip_conntrack_irc
echo -en "iptable_nat, "
$MODPROBE iptable_nat
echo -en "ip_nat_ftp\n "
$MODPROBE ip_nat_ftp
echo -e "---------------------------------------------------------------------- \n"
echo -e "eddigi szabályok törlése \n"
$IPTABLES --flush
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT

echo -e "---------------------------------------------------------------------- \n"
echo -e " Modulok betoltese kesz.\n"
echo " Ip tovabbitas engedelyezese.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo " DynamicAddr engedelyezese.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
echo " Alapveto atiranyitasok beallitasa.."

#feltöltés
$IPTABLES -P INPUT ACCEPT
#$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
#$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
#$IPTABLES -F FORWARD
$IPTABLES -t nat -F
#védelmek
$IPTABLES -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
$IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
$IPTABLES -A INPUT -p icmp -j DROP

echo -e "új szabályok betöltése"
echo " Csak Belulrol letrehozott kapcsolatok engedelyezese"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
#$IPTABLES -A FORWARD -i $EXTIF -o $ONTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
#$IPTABLES -A FORWARD -i $ONTIF -o $EXTIF -j ACCEPT

$IPTABLES -A FORWARD -j LOG

echo " Ip maszkolas engedejezese a $EXTIF eszkozon"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
# port nyitás (Gyengus)
$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.38 --dport 1111 -j DNAT --to 192.168.0.2 # WebServer
$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.38 --dport 1111 -j DNAT --to 192.168.0.2 # WebServer
$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.38 --dport 8989 -j DNAT --to 192.168.0.2 # DC
$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.38 --dport 8989 -j DNAT --to 192.168.0.2 # DC
$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.38 --dport 3389 -j DNAT --to 192.168.0.2 # Távoli asztal kapcsolat
$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.38 --dport 3389 -j DNAT --to 192.168.0.2 # távoli asztal kapcsolat
$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.38 --dport 6881 -j DNAT --to 192.168.0.2 #azureus
$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.38 --dport 6881 -j DNAT --to 192.168.0.2 #azureus
# port nyitás (Doki)
#$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.8 --dport 9898 -j DNAT --to 192.168.1.2 #DC
#$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.8 --dport 9898 -j DNAT --to 192.168.1.2 #DC

echo -e "KESZ.\n"

nem én írtam!

In the world w/o fences who need Gates?
In the world there are 10 type of ppl, who know the binary, and who dont.

1. depmod -a felesleges minden indulásnál, és viszonylag sokáig is tart.
2. Ha az input-ba berakod az icmp drop-ot, eldobja, és nem kerül be a forward láncba, ezért nincsen se ki, se be pinged.
3. Az ok, hogy beállítod, hogy mi mehet ki, és mi jöhet be, de sehol nem mondod neki, hogy masquerade-oljon.
Gyalulj ki mindent, ennyi legyen:


echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

Ennek működnie kell. Aztán ezt lehet finomítani, pl. ezzel:


$IPTABLES -A INPUT -i $EXTIF -m state --state ESTABLISHED,RELATED -j ACCEPT

Aztán ICMP..


$IPTABLES -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
[szerk2]$IPTABLES -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT # különben kintről a válasz nem jön be :)
$IPTABLES -A INPUT -p icmp -j DROP

stb...

[szerk]
Ez tuti nem lesz jó, mert nem ez az ip tartomány:
#$IPTABLES -A PREROUTING -t nat -p tcp -d 160.114.41.8 --dport 9898 -j DNAT --to 192.168.1.2 #DC
#$IPTABLES -A PREROUTING -t nat -p udp -d 160.114.41.8 --dport 9898 -j DNAT --to 192.168.1.2 #DC
És ha már $VALTOZO-kat használsz, akkor nem statikusan illik megadni, hanem dinamikusan :)


$IPTABLES=`which iptables`

A modprobe-ok is feleslegesek. Behúzza magának, ami kell, ha nem sikerül úgyis kiabál neked :).
--
Discover It - Have a lot of fun!

Az eth1-nek ne addjál gateway-t, mert azzal szerintem eléggé összekevered a routing-ot.
Küldd el, hogy mit ad vissza a route parancs

Intefaces probléma.

"auto eth0

iface eth1 inet static
address 192.168.0.4
netmask 255.255.255.0
gateway 160.114.41.38

auto eth1

auto eth0

iface eth1 inet static
address 192.168.0.4
netmask 255.255.255.0
gateway 160.114.41.38"

Most akkor dinamikus vagy nem, a bejövő neted?

"iface eth1 inet static"

Kicsit átkomponálva

"auto eth0

iface eth0 inet dhcp
#address 192.168.0.4
#netmask 255.255.255.0
#gateway 160.114.41.38

auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
#gateway 192.168.0.1

"a másik háló kari rögzített ip-t kap ez pedig 192.168.0.4"

Legyen mondjuk: 192.168.0.1, a belső kari!

ikszpének ez a gw.

----------------------------------------------------------------

"az xp milyen ip-t kap annak maradhat a kettő?"

Igen.
gw a szerver belső kari címe, dns szerver a szolgáltatód adja.
/etc/resolv.conf-ban megtalálod.

Ja, /etc/sysctl.conf és iptables-t ne feletsd el!

----------------------------------------------------------------