Toon posts:

[Slackware] Internet Delen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo Tweakers,

Ik heb deze week de tijd genomen om mijn Slackware server en bijbehorende software te configureren. Nu dit gelukt is wil ik het beestje aan internet hangen. Ik heb nu 2 nics in mijn Windows PC waarvan er 1 naar de linux bak moet. Dan krijg ik deze situatie:

Windows:
Nic1 > Direct gelinkt aan Linux (statisch)

Linux
Nic2 > Netwerkkaart op DHCP voor ADSL (DHCP)
Nic3 > Direct gelinkt aan Windows (statisch)

Nu kan ik Nic2 nog wel op DHCP krijgen voor ADSL alleen zodra ik nic3 dr bij doe weet ik niet hoe ik de nic moet instellen op een statisch ip. Zouden jullie mij misschien een eindje op weg willen helpen.

Verwijderd

Daarvoor dien je /etc/rc.d/rc.inet1 aan te passen, deze is namelijk maar voor max 2 nics.
Voeg onderstaande code toe aan je file voor de regel:
# Edit the next line to point to your gateway:
GATEWAY="" # REPLACE with YOUR gateway!
code:
1
2
3
4
5
6
7
8
9
# Edit these values to set up your third Ethernet card (eth2),
# if you have one.  Otherwise leave it configured to 127.0.0.1,
# or comment it out, and it will be ignored at boot.
IPADDR3="127.0.0.1"  # REPLACE with YOUR IP address!
NETMASK3="255.255.255.0" # REPLACE with YOUR netmask!
# Or, uncomment the following lines to set up eth2 using DHCP:
#USE_DHCP3=yes
# If your provider requires a DHCP hostname, uncomment and edit below:
#DHCP_HOSTNAME3="CCHOSTNUM-A"

Pas de waardes aan zodat ze overeenkomen met jouw ipnummer en netmask.

Vervolgens kun je onderstaande code kopieren voor de regel met:
# Set up the gateway:
if [ ! "$GATEWAY" = "127.0.0.1" -a ! "$GATEWAY" = "" ]; then
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
# Set up the eth2 interface:
if [ "$USE_DHCP3" = "yes" ]; then # use DHCP to set everything up:
  echo "Attempting to configure eth2 by contacting a DHCP server..."
  # Add the -h option to the DHCP hostname:
  if [ ! "$DHCP_HOSTNAME3" = "" ]; then
    DHCP_HOSTNAME3="-h $DHCP_HOSTNAME3"
  fi
  /sbin/dhcpcd -t 10 ${DHCP_HOSTNAME3} -d eth2
elif [ ! "$IPADDR3" = "127.0.0.1" -a ! "$IPADDR3" = "" ]; then # set up IP statically:
  # Determine broadcast and network addresses from the IP address and netmask:
  BROADCAST3=`/bin/ipmask $NETMASK3 $IPADDR3 | cut -f 1 -d ' '`
  NETWORK3=`/bin/ipmask $NETMASK3 $IPADDR3 | cut -f 2 -d ' '`
  # Set up the ethernet card:
  echo "Configuring eth2:"
  echo "ifconfig eth2 ${IPADDR3} broadcast ${BROADCAST3} netmask ${NETMASK3}"
  /sbin/ifconfig eth2 ${IPADDR3} broadcast ${BROADCAST3} netmask ${NETMASK3}
  # If that didn't succeed, give the system administrator some hints:
  if [ ! $? = 0 ]; then
    echo "Your eth2 card was not initialized properly.  Here are some reasons why this"
    echo "may have happened, and the solutions:"
    echo "1. Your kernel does not contain support for your card.  Including all the"
    echo "   network drivers in a Linux kernel can make it too large to even boot, and"
    echo "   sometimes including extra drivers can cause system hangs.  To support your"
    echo "   ethernet, either edit /etc/rc.d/rc.modules to load the support at boot time,"
    echo "   or compile and install a kernel that contains support."
    echo "2. You don't have an ethernet card, in which case you should fix"
    echo "   /etc/rc.d/rc.inet1 to stop trying to configure eth2. (Unless you don't mind"
    echo "   seeing this error...)"
  fi
fi # set up eth2

Ik heb dit niet getest, maar denk dat het wel werkt :)
/edit: schoonheidsfoutje verwijderd uit comments

Verwijderd

Topicstarter
Heb het inmiddels zo gekregen:

Windows:
192.168.0.2

Linux:
DHCP
192.168.0.1

Alleen nu krijgt de Windos bak geen internet. Ze kunnen elkaar wel pingen. Hoe kan ik dit oplossen

Verwijderd

Oeps, ik zie nu pas dat nic 1 in je windows bak zit. Mijn aanpassing van het script ging er van uit dat je 3 nics in je Slackware bak had zitten.
Foutje dus.

Post eens de output van route -n eens en heb je bij Windows 192.168.0.1 als gateway opgegeven ?

Verwijderd

Topicstarter
code:
1
2
3
4
5
6
7
root@frank:~# route -n
Kernel IP routing table
Destination     Gateway    Genmask     Flags Metric Ref    Use Iface
xxx.64.93.0     0.0.0.0    255.255.255.0   U     0  0     0 eth0
192.168.0.0     0.0.0.0    255.255.255.0   U     0  0     0 eth1
127.0.0.0    0.0.0.0       255.0.0.0     U     0    0     0 lo
0.0.0.0    xxx.64.93.1     0.0.0.0     UG    0  0     0 eth0

Yup de gateway staat goed :)

Verwijderd

Zo te zien ligt het niet aan je routing table, die staat op Linux wel goed. In Slackware wordt in /etc/rc.d/rc.inet2 ipforward al aangezet (default) dus als je daar niks in hebt veranderd zal dat ook niet de oorzaak zijn. DNS in Windows goed ingevuld (als in je provider DNS adressen ?)

Verwijderd

Topicstarter
Afbeeldingslocatie: http://www.atteveld.cistron.nl/probleem.jpg

Staat goed naar mijn weten. :)

Wat moet trouwens de gateway zijn van de nic in de linux bak die met mijn windows nic is verbonden. (de niet dhcp nic). Want dat staat nu niet ingesteld. Misschien dat het daar aan ligt.

Verwijderd

Die gateway staat wel ingesteld. De onderste regel geeft aan dat voor alle adressen buiten je interne netwerk de externe router via de externe netwerkkaart moet worden gebruikt.

Ook de DNS entries in Windows lijken goed te zijn. Vanaf je Linux bak kun je wel Internetten ? Staan de DNS nummers ook in je /etc/resolv.conf ?

Je hebt toch wel NAT aanstaan ?
Anders moet je even een firewallscript downloaden of bakken. Een goede firewall (erg uitgebreid) is gShield.en te vinden op http://muse.linuxmafia.org/ .

Verwijderd

Topicstarter
DNS staat goed in die file. Hoe check ik dan of NAT aan is. :?

Verwijderd

Als je nog niks met iptables hebt gedaan is het niet enabled. Je kunt dat zien door te kijken welke modules en welke rules er voor iptables zijn geladen.
code:
1
2
lsmod
iptables -L

Als er uit de output van lsmod geen ipt*.* modules te zien zijn is er nog geen NAT-functionaliteit geladen.
Als er uit de output van iptables -L geen rules worden getoond heb je waarschijnlijk nog geen firewall/NAT functionaliteit geactiveerd. Als uit het eerste commando geen iptables modules te zien zijn zal het tweede ook niet veel output geven vermoed ik.
gShield is een firewall met NAT functionaliteit. En zo zijn er nog talloze scripts te vinden op Internet dan wel op GoT.

Verwijderd

Topicstarter
OMFG het werkt. Heel errug bedankt voor de goede hulp janjanjansen. Die firewall flikte het m :)

Verwijderd

Je zult even de conf-file van de firewall doormoeten om mm zo in te stellen dat de boel juist staat voor jouw situatie. En dan even de firewall restarten.
Zo staat in de default config een voor jou foute volgorde van je nics. Het bestand heet gShield.conf en is volledig gedocumenteerd.

Graag gedaan. Loop nog wel even gShield.conf door voor de juiste instellingen. De file bevat duidelijke comments hoe en wat. :)

Verwijderd

Topicstarter
Ben dr nu mee bezig. Is handig in te stellen trouwens. :)
Pagina: 1