[routing] 2 subnets koppelen via pppd

Pagina: 1
Acties:

  • No13
  • Registratie: Januari 2001
  • Laatst online: 17-04 14:03

No13

/me was here

Topicstarter
Een jaar of wat geleden liepen ik en een vriend van me wat informatie te verzamelen om een WIFI verbinding tussen mijn huis en dat van hem te realiseren. Helaas is dit er nooit echt van gekomen.

Nu echter chello tegenwoordig 1 mbit upload heeft (chello classic) leek het ons leuk om via een soort van VPN de netwerken aan elkaar te knopen.

Zo gezegt zo gedaan, aan de hand van wat tutorials heb ik een pppd-over-ssh verbinding aan de praat gekregen. Mijn kant van de lijn is mijn linux router, zijn kant van de lijn is een wrt54g met aangepaste firmware (zodat we dus pppd en ssh hebben)

de pppd link is actief en lijkt goed te werken, maar nu wil ik daadwerkelijk de routing gaan instellen...

Eerst wat informatie:

subnet A - mijn netwerk - 192.168.13.0/24 (255.255.255.0 netmask)
subnet B - zijn netwerk - 192.168.1.0/24 (255.255.255.0 netmask)
vpn link - 192.168.2.0/24 (netmask ook weer 255.255.255.0)

de pppd link heb ik voor het gemak even in een andere range gezet om verwarring te voorkomen:

Bouter A heeft:
- eth0 = inet ip
- eth1 = 192.168.13.1
- ppp0 = 192.168.2.1

Router B heeft:
- vlan1 = inet ip
- br0 = 192.168.1.1
- ppp0 = 192.168.2.2

Route tabel op router A:
code:
1
2
3
4
5
6
7
8
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.2     *               255.255.255.255 UH    0      0        0 ppp0
192.168.1.0     192.168.2.2     255.255.255.0   UG    0      0        0 ppp0
localnet        *               255.255.255.0   U     0      0        0 eth1
62.195.16.0     *               255.255.254.0   U     0      0        0 eth0
loopback        *               255.0.0.0       U     0      0        0 lo
default         i16001.upc-i.ch 0.0.0.0         UG    0      0        0 eth0


Route tabel op router B:
code:
1
2
3
4
5
6
7
8
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.1     *               255.255.255.255 UH    0      0        0 ppp0
192.168.13.0    192.168.2.1     255.255.255.0   UG    0      0        0 ppp0
localnet        *               255.255.255.0   U     0      0        0 br0
212.187.53.0    *               255.255.255.0   U     0      0        0 vlan1
loopback        *               255.0.0.0       U     0      0        0 lo
default         c53001.upc-c.ch 0.0.0.0         UG    0      0        0 vlan1

Ik kan nu vanaf router A naar alle hosts uit subnet B pingen, maar vanaf router B kan ik alleen router A pingen en niet de andere ip's uit subnet A:

vanaf router A (tracert naar host uit subnet B)
code:
1
2
3
traceroute to 192.168.1.2 (192.168.1.2), 30 hops max, 38 byte packets
 1  192.168.2.2 (192.168.2.2)  22.306 ms  20.654 ms  18.648 ms
 2  192.168.1.2 (192.168.1.2)  20.151 ms  22.561 ms  20.674 ms


vanaf router B (tracert naar host uit subnet A)
code:
1
2
3
traceroute to 192.168.13.5 (192.168.13.5), 30 hops max, 40 byte packets
 1  192.168.2.1 (192.168.2.1)  24.185 ms  19.68 ms  20.019 ms
 2  * * *


Wat gaat er mis in mijn situatie?

[ Voor 2% gewijzigd door No13 op 09-03-2006 10:24 . Reden: info toegevoegd ]


  • No13
  • Registratie: Januari 2001
  • Laatst online: 17-04 14:03

No13

/me was here

Topicstarter
hmm het lijkt erop dat mijn gegevens niet helemaal in orde waren...

het accesspoint wat in subnet A stond met het ip 192.168.13.5 is niet te pingen terwijl mijn pc op 192.168.13.199 wel vanaf een machine in subnet B te pingen is

Met andere woorden, het lijkt wel allemaal te werken...

edit: Jep alles lijkt in orde, vannavond als er een werkstation in subnet B actief is ga ik controleren of er vanuit die machines ook naar mijn subnet A te pingen is maar vanaf router B kan ik nu mijn werkstation in subnet A bereiken

voor de ge-intresseerden:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin

## Start pppd op remote host
pty-redir /usr/bin/ssh -t -i /root/.ssh/specialkey 212.187.53.148 \
  /usr/sbin/pppd nomppc nomppe debug noauth lock asyncmap 0 > /tmp/vpn-tunnel
## Wacht even tot de connectie tot stand is gebracht
sleep 5

## Start lokaal een pppd en koppel die aan de pty van de remote pppd
/usr/sbin/pppd `cat /tmp/vpn-tunnel` debug noauth lock asyncmap 0 \
  192.168.2.1:192.168.2.2

## Wederom even wachten tot de handshake klaar is
sleep 15

## Lokaal de route instellen
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.2

## Remote de route instellen
/usr/bin/ssh -t -i /root/.ssh/specialkey 212.187.53.148 \
  route add -net 192.168.13.0 netmask 255.255.255.0 gw 192.168.2.1


de specialkey is voor de public-key authorisatie zodat ik geen password hoef in te geven

[ Voor 67% gewijzigd door No13 op 09-03-2006 12:30 ]