[REDHAT] Internet doorgeven

Pagina: 1
Acties:

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Hallo,

Ik heb thuis de volgende situatie:

- Router - PC1
......\ Linux Server

Nou heb ik nog een PC-2 die naast de linux server staat. Deze wil ik ook graag verbinden met internet. Dat zou natuurlijk kunnen dmv een extra lijntje vanaf de router wat het eenvoudigst is alleen dan moet ik 50 meter kabel kopen en het halve huis verbouwen. Het leek mij dus het makkelijkst om in de Linux server een extra netwerk kaart te zetten en deze dmv een crosscable connecten met de PC-2.

Goed maar nu komt de vraag: hoe krijg ik op PC-2, zonder al te veel rotzooi, internet. Ik heb op internet en op GoT gezocht en kwam op de volgende mogelijkheiden:

- proxy
- dhcp
- bridge
- iptables

Wat is nou de beste en eenvoudigste oplossing ?? Er zijn overal wel howto's van te vinden, alleen word ik niet wijs in welke situatie je nou wat moet gebruiken.

Ik hoop dat iemand mij duidelijkheid wil verschaffen.

  • Wilke
  • Registratie: December 2000
  • Laatst online: 16-02 19:49
NAT (Network Address Translation), voor deze specifieke toepassing ook wel IP Masquerading genoemd. En dat stel je inderdaad in met iptables.

Maar ja, niet voor niets staat hierover een entry in de NOS FAQ: Hoe werkt "internet delen" onder Linux?. Ik zie dat die entry hopeloos is gesloopt door een React update en bovendien outdated is ( :X ), dus bij deze dan maar een wat nuttiger link:

Simple IP Masquerading, kort samengevat


Het heet 'Network Address Translation' omdat je netwerk-adressen (IP's) herschrijft/afbeeldt op andere adressen. NAT is dus de algemene term, je kunt in theorie op allerlei wazige manieren het ene adres in het andere herschrijven tussen de 2 netwerkkaarten in.

De specifieke toepassing die jij nodig hebt wordt wel 'IP Masquerading' genoemd, omdat je je interne netwerk 'maskeert' of 'verbergt' achter een regel die een intern adres herschrijft naar het externe adres, en op de terugweg ook nog doorheeft dat een bepaald pakket eigenlijk bedoeld is voor een intern adres (en dan dus het adres weer terug verwisseld van extern naar intern).

Dat is ook precies waar de commando's voor zorgen die in de URL hierboven staan.

Hopelijk maakt dit het een klein beetje duidelijk?

[ Voor 44% gewijzigd door Wilke op 02-11-2004 13:29 ]


  • XTerm
  • Registratie: Juli 2001
  • Laatst online: 10-06-2025
Best is iptables te gebruiken. Je moet de iptables modules hebben op de gnu/linux bak.
Stel eth0 is je WAN interface en eth1 is verbonden met pc2 dan doe je:
code:
1
2
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


Op de windowsbak zet je dan als gateway de linux bak. Et voila :)

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
iptables is gewoon geinstalleerd. Ik ga het nu even proberen.

  • Jimbolino
  • Registratie: Januari 2001
  • Laatst online: 13-02 16:07

Jimbolino

troep.com

dat echo "1" kun je dat ook op een andere manier oplossen? ik vind het zo uber-knullig staan namelijk...

The two basic principles of Windows system administration:
For minor problems, reboot
For major problems, reinstall


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Jimbolino schreef op 02 november 2004 @ 13:30:
dat echo "1" kun je dat ook op een andere manier oplossen? ik vind het zo uber-knullig staan namelijk...
Wat is er knullig aan dan?
Het kan trouwens ook met sysctl[norml](8)[/].

  • mguilmot
  • Registratie: November 2004
  • Laatst online: 13-08-2023

mguilmot

NPI

http://www.npi.be


  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Hoe zit het eigenlijks met die eth1? Moet je die ook toevoegen bij de netwerk configuratie ? En wat voor IP moet je deze dan geven ? Want als ik nu opstart zie ik:
Bringin up eth0 [ok]
Bringin up eth1 [failed]

  • mguilmot
  • Registratie: November 2004
  • Laatst online: 13-08-2023

mguilmot

NPI

Als je hem gebruikt wel.
Je kunt hem als je hem niet gebruikt ook ip 10.0.0.1 geven of zo ;)

Dan krijg je die failed niet, en er is niks mis mee, tenzij je eth0 al een 10.0.0.x is natuurlijk ...

http://www.npi.be


  • Wilke
  • Registratie: December 2000
  • Laatst online: 16-02 19:49
De interne kaart moet natuurlijk een intern IP krijgen, anders gaat dit niet werken. Meestal 192.168.1.1, en dan geef je je workstation 192.168.1.2 bijvoorbeeld.

  • Jimbolino
  • Registratie: Januari 2001
  • Laatst online: 13-02 16:07

Jimbolino

troep.com

Zo is het toch veel netter:
By default, the IPv4 policy in Red Hat Enterprise Linux kernels disables support for IP forwarding, which prevents boxes running Red Hat Enterprise Linux from functioning as dedicated edge routers. To enable IP forwarding, run the following command:
sysctl -w net.ipv4.ip_forward=1

If this command is run via shell prompt, then the setting is not remembered after a reboot. You can permanently set forwarding by editing the /etc/sysctl.conf file. Find and edit the following line, replacing 0 with 1:
net.ipv4.ip_forward = 0

Execute the following command to enable the change to the sysctl.conf file:
sysctl -p /etc/sysctl.conf
is er toevallig ook een soortgelijke oplossing voor de 2e regel van het scripje?
ik vind het "netter" om gebruik te maken van bestaande config files, dan zelf een scripje aan te maken...

[ Voor 13% gewijzigd door Jimbolino op 02-11-2004 13:53 ]

The two basic principles of Windows system administration:
For minor problems, reboot
For major problems, reinstall


  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Goed ik heb het een en ander geprobeerd, de instellingen zijn als volgt:

Router:
ip: 192.168.1.2
dhcp: aan

Linuxbak:
eth0: ip: 192.168.1.2 | default gateway: 192.168.1.1
eth0: ip: 10.0.0.1

PC2
ip: 192.168.1.3 | default gateway: 192.168.1.1

Als eerste heb ik het volgende gedaan:
code:
1
2
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


Dit had geen effect pc2 kon niets ontvangen. Daarna heb ik het volgende gedaan:
code:
1
sysctl -w net.ipv4.ip_forward=1


Ook het aan en uitzetten van de firewall op de linux bak heeft geen effect. Moet de firewall aan of uit staan ??

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 07:12
Hmm, ik snap niet waarom jullie NAT aanraden op een net waarbij dat helemaal niet hoeft :X

router:
code:
1
2
eth1: 192.168.0.1
route add 10.0.0.0/24 gw 192.168.0.2


PC1:
eth0: 192.168.0.2, default gw 192.168.0.1
eth1: 10.0.0.1
code:
1
echo 1 > /proc/sys/net/ipv4/ip_forward


PC2:
eth0: 10.0.0.2, default gw 10.0.0.1

Zo zou je je netwerk setup kunnen maken, nummers mogen afwijken, zolang ze maar bij elkaar in de juiste subnetten zitten als in dit voorbeeld.

Wat misschien makkelijker is: haal bij de elektroboer ff 2 dubbele RJ45 wanddoosjes en split je 50 meter kabel op aan beide kanten. Je hebt dan geen mogelijkheden tot Gbit LAN meer over die kabel, maar je kunt gewoon inpluggen en internetten zonder dat je PC1 hoeft aan te staan.
Hetzelfde heb ik gedaan om mijn kabelmodem die in de kelder hangt te verbinden aan mn server die op mijn slaapkamer staat, waarbij ik ook nog een netwerklink wil hebben naar de woonkamer, die naast de kelder zit.
Er staat in de FAQ van het netwerkforum wel hoe je je kabel moet aansluiten op de RJ45 doosjes om bovenstaande uit te voeren.

  • Z-Dragon
  • Registratie: December 2002
  • Laatst online: 00:50
Misschien niet zo actueel meer nu..., maar was het niet mogelijk om door 1 UTP-kabel 2 verbindingen te laten lopen? Aan beide kanten van de lijn de kabel splitsen...?

Lol, 3 minuten verschil met de persoon boven me. >:)

[ Voor 15% gewijzigd door Z-Dragon op 02-11-2004 14:51 ]

^ Wat hij zegt.


  • Wilke
  • Registratie: December 2000
  • Laatst online: 16-02 19:49
_JGC_ schreef op 02 november 2004 @ 14:47:
Hmm, ik snap niet waarom jullie NAT aanraden op een net waarbij dat helemaal niet hoeft :X
Arg, je hebt natuurlijk gelijk, ik heb niet goed gelezen en dacht dat de router in bridging mode stond (dus dat de ene computer gewoon een rechtstreeks extern IP had). Dan heb je wel NAT nodig.

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Inmiddels heb ik verbinding tussen de linux bak en pc2. Ik kan vanaf pc2 gewoon de linux bak pingen. Ik kom alleen nog niet voorbij de linux bak komen. Ik kan bijvoorbeeld google.nl (ook als ik het IP adres invul) niet pingen.

De router is trouwens een gewone 3com router die rechtstreeks is aangesloten op internet.

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 07:12
emkedouwe schreef op 02 november 2004 @ 15:51:
Inmiddels heb ik verbinding tussen de linux bak en pc2. Ik kan vanaf pc2 gewoon de linux bak pingen. Ik kom alleen nog niet voorbij de linux bak komen. Ik kan bijvoorbeeld google.nl (ook als ik het IP adres invul) niet pingen.

De router is trouwens een gewone 3com router die rechtstreeks is aangesloten op internet.
Ah, dus de router is niet een linux PC met NAT... :P

Dan wordt het iets anders, je router moet nml weten hoe ie via PC1 bij PC2 moet komen. Je moet dus een statische route opgeven zoals ik doe in het commando wat tussen de code tags staat bij het kopje router.
Ik neem aan dat dit met 3COM routers wel moet kunnen, aangezien het mij bij zowel Asus routers, CNetUSA routers als Linksys routers gelukt is. Bij een SMC router ging de boel niet op, die weigerde gewoon pertinent :X

Mocht je 3COM router geen support voor static routes hebben, dan zit je alsnog aan NAT vast. Ik zit hier in Noorwegen met een Netopia modem die absoluut geen zin heeft om statische routes te laten werken, daar heb ik de OpenBSD VPN router ook met NAT mogen laten werken :X

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
nee, heb ik weer. Mijn 3Com router ondersteund dus geen static routes. Ook na een firmware update van de router bleek het er niet op te zitten.

Als ik het goed begrijp moet ik het dus nu doen via:
code:
1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Klopt het dat de iptables werken via de firewall ?? Ofwel dit niet werkt als de firewall uit staat

Mijn huidige iptables file in /etc/sysconfig/ dat automatisch word opgestart tijdens de boot ziet er als volgt uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#       firewall; such entries will *not* be listed here.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Lokkit-0-50-INPUT - [0:0]
-A INPUT -j RH-Lokkit-0-50-INPUT
-A FORWARD -j RH-Lokkit-0-50-INPUT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 25 --syn -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 80 --syn -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 21 --syn -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 22 --syn -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 23 --syn -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p udp -m udp -s 0/0 --sport 67:68 -d 0/0 --dport 67:68 -i eth0 -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p udp -m udp -s 0/0 --sport 67:68 -d 0/0 --dport 67:68 -i eth1 -j ACCEPT
-A RH-Lokkit-0-50-INPUT -i lo -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 0:1023 --syn -j REJECT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 2049 --syn -j REJECT
-A RH-Lokkit-0-50-INPUT -p udp -m udp --dport 0:1023 -j REJECT
-A RH-Lokkit-0-50-INPUT -p udp -m udp --dport 2049 -j REJECT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 6000:6009 --syn -j REJECT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 7100 --syn -j REJECT
COMMIT
# Generated by webmin
*mangle
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed
# Generated by webmin
*nat
:OUTPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed

[ Voor 86% gewijzigd door emkedouwe op 02-11-2004 17:11 ]


  • Grom
  • Registratie: Juli 2002
  • Laatst online: 25-11-2024

Grom

lief hè!

Waarom pakje geen switch op / ipv de verbinding met "linux server" en vandaar naar de twee pc's? Of zie ik nu iets helemaal over het hoofd :?

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Omdat ik simpel weg 10 netwerk kaarten op de plank heb liggen en 0 switches. Daarnaast staat de linux server dag en nacht aan.
Pagina: 1