Két PC között szertnék net megosztást csinálni. Már sokszor volt ilyen téma, ezeket gondosan elolvastam, és a tanulságot leszűrve az alábbiak szerint jártam el:
Az egyik, "A" gép (Debian Lenny) eth0-n keresztül kapcsolódik az internethez, és eth1-en keresztül a "B" géphez (Debian Etch).
Az "A" gép ifconfig-ja:
eth0 Link encap:Ethernet HWaddr 00:11:2f:8a:5f:85
inet addr:80.99.54.139 Bcast:255.255.255.255 Mask:255.255.252.0
UP BROADCAST RUNNING MULTICAST MTU:576 Metric:1
RX packets:101652 errors:0 dropped:0 overruns:1 frame:0
TX packets:27440 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20967086 (19.9 MiB) TX bytes:2926447 (2.7 MiB)
Interrupt:18 Base address:0xe000
eth1 Link encap:Ethernet HWaddr 00:e0:29:77:f5:88
inet addr:192.168.5.1 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 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:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:16 Base address:0xe800
Az "A" gépen az alábbi parancsokkal próbáltam elérni a netmegosztást:
$ ifconfig eth1 up
$ ifconfig eth1 192.168.5.1 netmask 255.255.255.0
$ modprobe iptable_nat
$ echo 1 > /proc/sys/net/ipv4/ip_forward
$ iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
$ iptables -A FORWARD -i eth1 -j ACCEPT
Az "A" gépen a routing table:
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.5.0 * 255.255.255.0 U 0 0 0 eth1
80.99.52.0 * 255.255.252.0 U 0 0 0 eth0
default catv-80-99-55-2 0.0.0.0 UG 0 0 0 eth0
A másik, "B" gép eth1-en keresztül kapcsolódik az "A" géphez,
eth1 inet addr:192.168.5.2 Bcast:192.168.0.255 Mask:255.255.255.0
A "B" gépen ezeket a parancsokat futtattam:
$ ifconfig eth1 up
$ ifconfig eth1 192.168.5.2 netmask 255.255.255.0
$ route del -net default 2>/dev/null
$ route add default gw 192.168.5.1
Ekkor úgy gondoltam, hogy kellne működnie az internet megosztásnak, de nem működött.
Pingelésre mindkét oldalról "Destination host unreachable" a válasz.
A hálókártyák ledjei nem világítanak, holott ha a modemből kijövő kábelt dugom beléjük, akkor igen.
(Az internet UPC, a hálókártyák realtek8139-esek.)
Igazából még soha nem csináltam ilyet, tudnátok segíteni, hogy mi kellene még, hogy működjön?
- 2408 megtekintés
Hozzászólások
A két gép között crosslink kábel van?
- A hozzászóláshoz be kell jelentkezni
Én elsősorban arra gondolok hogy a két gép közti utp kábel nem megfelelő. Két gép közé keresztkötésű (cross) utp kábel szükséges, valószínűleg ezért nincs link (ezért nem világítanak a hálókártyák ledjei).
Ellenőrizni könnyen lehet milyen is a utp kábel a színsorend alapján. Itt található némi segítség:
http://hu.wikipedia.org/wiki/UTP
- A hozzászóláshoz be kell jelentkezni
angol, de az ábra közérthető:
http://www.zytrax.com/tech/layer_1/cables/tech_lan.htm#100c
kábel OK vagy sem:
nat-olni a külső if-en kell (a te esetedben eth0);
ha az input policy DROP, akkor simán engedélyezni kell a belső if-en a forgalmat:
... -A INPUT -i eth1 -j ACCEPT
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
ne legyél mán sóher, megmondhatnád a frankót, hogy hol szereztél ijen jútípí kábelt...
- A hozzászóláshoz be kell jelentkezni
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
helyett majd ha már lesz keresztkábeled használd a:
"iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE" -t
szerintem
- A hozzászóláshoz be kell jelentkezni
Hát, igazatok lehet! Azt hiszem ez nem crosslink kábel.
Délután kipróbálom egy crosslink kábellel, és remélem működni fog!
- A hozzászóláshoz be kell jelentkezni
Köszönöm a segítséget, most már nagyszerűen működik! Egyrészt crosslink kábel kellett, másrészt a két iptables parancsban is hiba volt.
- A hozzászóláshoz be kell jelentkezni