PDA

Bekijk Volledige Versie : IPv6 Routering



johan.smits
27/07/10, 23:18
Je hoort de laatste tijd veel op IPv6 en ik dacht, laat ik mijn server's alvast voorbereid zijn.

Ik doe sinds vandaag mee aan IPv6 Pilot van TransIp.
Nu heb ik een /64 blok gekregen.
Hoeveel adressen kan ik dan gebruiken?

Nu heb ik al verbinding op IPv6, pingen etc naar IPv6 Hosts werkt en ik kan ook benaderd worden.

Nu heb ik echter een vraag, ik heb een debian firewall draaien met voor ipv4 iptables als firewall/nat.
Nu wilde ik voor mijn IPv6 adressen ook nat regels aanmaken.

2 vragen,

1e vraag, kan ik van een ipv6 een nat maken naar een intern ipv4 adres?
Indien nee, is er een locale range voor ipv6 beschikbaar (ala 192.168.x.x)?

vraag 2, kan ik met ipv6 adressen natten? Heeft iemand een voorbeeld van een iptables commando (poort 80 bv).

Mvgr Johan

Wido
27/07/10, 23:21
NAT met IPv6 is er niet meer, dat wil je ook niet!

Voor IPv6 gebruik je verder ip6tables ipv iptables.

Als je nu al "ipv6.google.com" kan pingen, dan is het een kwestie van je services ook op IPv6 laten luisteren en dan werkt het :)

Ook heb je geen interne range meer nodig, we hebben met IPv6 nu zó veel addressen, dat je je daar geen zorgen om te maken hebt.

johan.smits
27/07/10, 23:24
Maar hoe moet ik dan mijn "router" configureren?
Stel ik geef mijn interne server's ook een ipv6 adres welke publiek is.
Hoe kan ik er dan voor zorgen dat deze publiek beschikbaar komt?

Freakingme
27/07/10, 23:48
Met ipv6 kan je uitrekenen hoeveel ip-adressen je hebt met 't sommetje 2^(128-blokgrootte). Als je dus een /64 blok hebt heb je 2^(128-64) = 2^64 addressen.

Wido
27/07/10, 23:52
Maar hoe moet ik dan mijn "router" configureren?
Stel ik geef mijn interne server's ook een ipv6 adres welke publiek is.
Hoe kan ik er dan voor zorgen dat deze publiek beschikbaar komt?Dan zal je een subnet naar je router gerouteerd moeten krijgen (kan static) waarna je dit subnet vervolgens routeert in je interne netwerk.

Op deze router/server kan je met ip6tables dan ook al je verkeer filteren.

johan.smits
28/07/10, 00:15
ik heb ipv6 forwarding aan gezet.
eth1 heeft een publiek sit1 ip (tunnel)
eth0 heeft IP 2001:ffff:ffff::1 (local lan)
Hoe moet ik nu een linux client connecten om ipv6 stations te kunnen benaderen?

ik heb geprobeerd op de client:
iface eth0 inet6 static
address 2001:ffff:ffff::2
netmask 64
gateway 2001:ffff:ffff::1

Maar dan kom ik niet eens bij de tunnelgateway uit.
Kan wel het publieke Ipv6 ip op sit1 pingen maar daarna stopt het.

johan.smits
28/07/10, 10:05
Echte tutorials kan ik op het web niet vinden.
Is er documentatie beschikbaar hoe een IPv6 netwerk in te richten?

Ik heb de volgende vragen:
Als mijn datacenter servers enkel IPv6 gebruiken, hoe stel ik de gateway in zodat deze ook IPv4 adressen kunnen openen?
Kunnen dan IPv4 clients (klanten) ook bij de webserver's komen die enkel IPv6 adressen hebben?
Is er een handleiding hoe de router/firewall te configureren op Linux/Iptables basis?
Zijn er migratie documenten hoe te gebruiken?

Zoals ik het nu zie zijn er straks veel diensten die enkel met IPv6 zijn ingericht niet te benaderen voor bedrijven welke geen IPv6 hebben. Hoe is deze migratie gepland?

vDong
28/07/10, 11:25
Echte tutorials kan ik op het web niet vinden.
Is er documentatie beschikbaar hoe een IPv6 netwerk in te richten?


Kijk eens op www.sixxs.net, die website (eigenlijk de voorganger ervan) heeft mij 10 jaar geleden geholpen met de eerste stapjes. De tutorals zijn compleet ingericht voor thuisgebruik, nadat je deze stappen helemaal snapt moet het datacenter gebruik helemaal makkelijk zijn.

Hier denk ik al jaren niet meer na over ipv6, een nieuw apparaat pakt (via radvd) netjes een ip adres en een route op.

tvi
28/07/10, 14:30
NAT met IPv6 is er niet meer, dat wil je ook niet!


Dat is twee keer niet helemaal waar, NAT met IPv6 werkt prima. In een heleboel situaties zal NAT niet nodig zijn, misschien zelfs niet gewenst zijn, maar er zijn een paar specfieke situaties denkbaar waarin bijvoorbeeld voor interne netwerken gebruik gemaakt wordt van ULA (http://en.wikipedia.org/wiki/Unique_local_address) om af te dwingen dat machines in het interne netwerk onder geen enkel beding een publiek benaderbaar adres hebben. Er zijn wat securitystandaarden (o.a. PCI DDS - http://en.wikipedia.org/wiki/PCI_DSS) die eisen dat machines geen end-to-end traceerbaar adres mogen hebben. Om deze machines toch IPv6 te laten gebruiken kun je dus IPv6 NAT gebruiken.

Ik ben er in veel situaties absoluut geen voorstander van om NAT te gebruiken, maar er zijn ook wel nadelen aan ieder apparaat maar aan het publieke net te hangen zonder je bewust te zijn van de consequenties. NAT levert verre van een 100% bescherming, maar het kan in vele gevallen wel als een goede eerste scheiding tussen publieke en minder publieke netwerken functioneren. Neemt niet weg dat zinnige routing- en firewall policies natuurlijk altijd belangrijker zijn.

johan.smits
28/07/10, 14:37
Dat is twee keer niet helemaal waar, NAT met IPv6 werkt prima. In een heleboel situaties zal NAT niet nodig zijn, misschien zelfs niet gewenst zijn, maar er zijn een paar specfieke situaties denkbaar waarin bijvoorbeeld voor interne netwerken gebruik gemaakt wordt van ULA (http://en.wikipedia.org/wiki/Unique_local_address) om af te dwingen dat machines in het interne netwerk onder geen enkel beding een publiek benaderbaar adres hebben. Er zijn wat securitystandaarden (o.a. PCI DDS - http://en.wikipedia.org/wiki/PCI_DSS) die eisen dat machines geen end-to-end traceerbaar adres mogen hebben. Om deze machines toch IPv6 te laten gebruiken kun je dus IPv6 NAT gebruiken.

Ik ben er in veel situaties absoluut geen voorstander van om NAT te gebruiken, maar er zijn ook wel nadelen aan ieder apparaat maar aan het publieke net te hangen zonder je bewust te zijn van de consequenties. NAT levert verre van een 100% bescherming, maar het kan in vele gevallen wel als een goede eerste scheiding tussen publieke en minder publieke netwerken functioneren. Neemt niet weg dat zinnige routing- en firewall policies natuurlijk altijd belangrijker zijn.

Dus ik kan met ip6tables IPv6 tables masqurade toepassen voor de toegang tot internet?

Wido
28/07/10, 14:47
Dat is twee keer niet helemaal waar, NAT met IPv6 werkt prima. In een heleboel situaties zal NAT niet nodig zijn, misschien zelfs niet gewenst zijn, maar er zijn een paar specfieke situaties denkbaar waarin bijvoorbeeld voor interne netwerken gebruik gemaakt wordt van ULA (http://en.wikipedia.org/wiki/Unique_local_address) om af te dwingen dat machines in het interne netwerk onder geen enkel beding een publiek benaderbaar adres hebben. Er zijn wat securitystandaarden (o.a. PCI DDS - http://en.wikipedia.org/wiki/PCI_DSS) die eisen dat machines geen end-to-end traceerbaar adres mogen hebben. Om deze machines toch IPv6 te laten gebruiken kun je dus IPv6 NAT gebruiken.

Ik ben er in veel situaties absoluut geen voorstander van om NAT te gebruiken, maar er zijn ook wel nadelen aan ieder apparaat maar aan het publieke net te hangen zonder je bewust te zijn van de consequenties. NAT levert verre van een 100% bescherming, maar het kan in vele gevallen wel als een goede eerste scheiding tussen publieke en minder publieke netwerken functioneren. Neemt niet weg dat zinnige routing- en firewall policies natuurlijk altijd belangrijker zijn.Ok, daar kan ik zeker in komen, maar veel mensen blijven NAT als een stukje veiligheid zien, waar dit in principe met IPv6 ook met een statefull firewall kan die routering doet.

WAN -> static route -> firewall -> servers

Waar er nu vaak dan NAT wordt gedaan door de firewall om het geheel zo "veilig" te maken.

NAT maakt nu vaak meer kapot dan het goed maakt, denk hierbij oa SIP, waar we met dingen als STUN moeten klungelen.

Daarom zou ik niet al te snel webservers of andere servers met een publieke taak achter NAT zetten, eigenlijk helemaal nooit.

Ik had overigens begrepen dat de ULA adressen zouden vervallen, maar ze blijken er toch weer te zijn?

MediaServe
28/07/10, 16:58
Nu heb ik een /64 blok gekregen.
Hoeveel adressen kan ik dan gebruiken?

Een IPv6 adres kent 8 blokjes van 16 bits. Met een masker van 64 bits, houd je dus nog (128 - 64 =) 64 bits over, dat zijn 4 blokjes van 16 bits. 0 t/m 1111111111111111 = 65.536 mogelijkheden per blokje.

Met een /64 heb je dus:

65.536 ^ 4 = 18.446.744.073.709.551.616

Met een /48 heb je dus:

65.536 ^ 5 = 1.208.925.819.614.629.174.706.176

:lovewht:

tvi
28/07/10, 19:21
Ok, daar kan ik zeker in komen, maar veel mensen blijven NAT als een stukje veiligheid zien, waar dit in principe met IPv6 ook met een statefull firewall kan die routering doet.

WAN -> static route -> firewall -> servers

Waar er nu vaak dan NAT wordt gedaan door de firewall om het geheel zo "veilig" te maken.

NAT maakt nu vaak meer kapot dan het goed maakt, denk hierbij oa SIP, waar we met dingen als STUN moeten klungelen.


Helemaal mee eens verder hoor, alleen stelde je eerst dat NAT niet bestond ;)

Ik denk alleen dat er erg goed opgepast moet worden dat je niet nu opeens alles publiek aan 't internet hangt.



Daarom zou ik niet al te snel webservers of andere servers met een publieke taak achter NAT zetten, eigenlijk helemaal nooit.

Ik had overigens begrepen dat de ULA adressen zouden vervallen, maar ze blijken er toch weer te zijn?

Ik denk dat je dan in de war bent met site local adressen, die zijn inmiddels komen te vervallen en vervangen door ULA. Zie ook de link naar ULA die ik in een eerder bericht postte, daarin staat het in de inleiding uitgelegd ;)

tvi
28/07/10, 19:31
Echte tutorials kan ik op het web niet vinden.
Is er documentatie beschikbaar hoe een IPv6 netwerk in te richten?

Ik heb de volgende vragen:
Als mijn datacenter servers enkel IPv6 gebruiken, hoe stel ik de gateway in zodat deze ook IPv4 adressen kunnen openen?
Kunnen dan IPv4 clients (klanten) ook bij de webserver's komen die enkel IPv6 adressen hebben?
Is er een handleiding hoe de router/firewall te configureren op Linux/Iptables basis?
Zijn er migratie documenten hoe te gebruiken?

Zoals ik het nu zie zijn er straks veel diensten die enkel met IPv6 zijn ingericht niet te benaderen voor bedrijven welke geen IPv6 hebben. Hoe is deze migratie gepland?

Als je dat nu wilt doen, zul je twee kanten op NAT moeten gaan doen om: IPv6 naar IPv4 (naar de buitenwereld) en IPv4 naar IPv6 (naar jouw netwerk). Lijkt me nog niet echt een ideale situatie op dit moment. Er zijn wat implementaties die dit kunnen, hoe goed en stabiel het allemaal is durf ik niet te zeggen. Hier http://en.wikipedia.org/wiki/IPv6_transition is wel wat terug te lezen over transitiemechansimen.

Op wat experimenten na is de tijd eigenlijk nog echt niet rijp voor IPv6-only netwerken. Op dit moment worden dus netwerken (en diensten) juist dual stack uitgevoerd, en niet 'enkel IPv6' zoals je stelt.

johan.smits
28/07/10, 21:11
Heb een aantal tests gedaan.
In de ip6tables zit geen NAT table:
ip6tables -t nat -A POSTROUTING -s 2001:ffff:ffff::/64 -o sit1 -j MASQUERADE
ip6tables v1.4.2: can't initialize ip6tables table `nat': Table does not exist (do you need to insmod?)

Kan iemand mij op weg helpen bij het opzetten van een IPv6 only network?
Heb een gateway/router (debian) erachter verschillende clients, debian/windows7 welke ik enkel op IPv6 wil laten functioneren.

Welk adres kan ik dan instellen op mijn router eth0 (local)?
En welke adres reeks moet ik de clients geven (uitgaand van een vast ip)?

Alvast bedankt voor de goede tips.

tvi
28/07/10, 22:35
Heb een aantal tests gedaan.
In de ip6tables zit geen NAT table:
ip6tables -t nat -A POSTROUTING -s 2001:ffff:ffff::/64 -o sit1 -j MASQUERADE
ip6tables v1.4.2: can't initialize ip6tables table `nat': Table does not exist (do you need to insmod?)

Kan iemand mij op weg helpen bij het opzetten van een IPv6 only network?
Heb een gateway/router (debian) erachter verschillende clients, debian/windows7 welke ik enkel op IPv6 wil laten functioneren.

Welk adres kan ik dan instellen op mijn router eth0 (local)?
En welke adres reeks moet ik de clients geven (uitgaand van een vast ip)?

Alvast bedankt voor de goede tips.

Ik zag zo snel geen bevestiging dat ip6tables NAT zou ondersteunen, heb er zelf ook nog nooit wat mee gedaan.

Wat ik nog steeds niet helemaal snap is waarom je nu al zo'n setup zou willen maken en niet gewoon start met een dual stack configuratie. Dat is een veel simpelere manier om bekend te raken met IPv6.

johan.smits
28/07/10, 22:42
Ik zag zo snel geen bevestiging dat ip6tables NAT zou ondersteunen, heb er zelf ook nog nooit wat mee gedaan.

Wat ik nog steeds niet helemaal snap is waarom je nu al zo'n setup zou willen maken en niet gewoon start met een dual stack configuratie. Dat is een veel simpelere manier om bekend te raken met IPv6.

ik heb dual stack werkend. Echter heb ik een aantal diensten/server's achter een nat (ipv4) zitten welke ik ook ipv6 verbindingen wil voor zien.
Het opzetten van IPv6 is geen probleem op de router, wil het netwerk achter de router ook voorzien van IPv6 en hier loop ik nu tegen problemen aan.

tvi
28/07/10, 22:51
ik heb dual stack werkend. Echter heb ik een aantal diensten/server's achter een nat (ipv4) zitten welke ik ook ipv6 verbindingen wil voor zien.
Het opzetten van IPv6 is geen probleem op de router, wil het netwerk achter de router ook voorzien van IPv6 en hier loop ik nu tegen problemen aan.

ah ok, 't plaatje wordt langzaamaan duidelijker, je had het tot nu toe steeds over IPv6-only. Waarom zou je graag NAT willen blijven gebruiken bij IPv6 en niet gewoon routeren? Dan kun je gewoon zorgen dat je een /64 aan de binnenkant van je router hangt en daaruit je machines een adres geeft.

PS: er zit een typo in je signature

johan.smits
28/07/10, 23:12
ik kan geen goede handleiding vinden welke adressen ik op welke interfaces moet koppelen.
Liever zou ik een nat zien, dat blijven de regels voor nat bijna hetzelfde en is lokaal netwerk goed gescheiden van publiek.

Routeren is ook een optie, weet alleen niet hoe te configureren.
Kan ik de router dan alsnog als firewall gebruiken? zodat ik hosts toch kan afscheiden van het publieke net?

tvi
28/07/10, 23:52
ik kan geen goede handleiding vinden welke adressen ik op welke interfaces moet koppelen.
Liever zou ik een nat zien, dat blijven de regels voor nat bijna hetzelfde en is lokaal netwerk goed gescheiden van publiek.

Routeren is ook een optie, weet alleen niet hoe te configureren.
Kan ik de router dan alsnog als firewall gebruiken? zodat ik hosts toch kan afscheiden van het publieke net?

Ik zou geen NAT gaan gebruiken als het niet nodig is, zeker niet in hostingomgevingen. De scheiding die je door NAT creeert is er natuurlijk ook gewoon in IPv6 zonder NAT, de externe interface van je router zal in een ander netwerk zitten dan de interne. Enige verschil is dat beide kanten publiek routeerbare adressen gebruiken. Qua firewalling maakt het ook verder niet uit, die firewall is tenslotte alleen maar aan het kijken of source/destination IP's en poorten voldoen aan jouw regeltjes.

Wat je aan IP's moet configureren is natuurlijk afhankelijk van wat je precies van je ISP toegewezen hebt gekregen. Ik kan me voorstellen dat je een /48 hebt waarvan een /64 tussen jou en je provider als interconnectie gebruikt wordt. Dan zou je de overige /64's uit die /48 naar je router kunnen laten routeren, en zo deze aan de binnenkant van je router kunnen configureren.

Dus om het iets concreter te maken (en dit is echt maar een van de mogelijke constructies): stel dat je 2001:db8::/48 van je ISP gekregen hebt, dan kun je 2001:db8:1::/64 tussen jou en je ISP gedeeld wordt, bijvoorbeeld 2001:db8:1::1 voor de gateway van de ISP, en 2001:db8:1::2 voor jouw router. Dan kan je ISP de gehele range 2001:db8::/48 naar jouw router routeren. Aan de LAN-zijde van jouw router kun je dan je /64 verder opsplitsen in losse /64's per netwerk/VLAN (afhankelijk van de omvang van je netwerk), bijvoorbeeld dus 2001:db8:2::/64. Je router geef je het eerste IP uit die range (2001:db8:2::1), dat wordt de gateway voor je servers. Hoe je verder je servers nummert is aan jou. Een manier die ik wel eens toepas is het servicenummer (TCP poort) verwerken in het adres. Dus bijvoorbeeld 2001:db8:2::80:1 voor m'n eerste webserver, 2001:db8:2::25:2 voor m'n 2e mailserver, etc. Een andere methode die ik wel eens zie is het IPv4 adres coderen in het IPv6 adres, om zo wat duidelijkheid te hebben welke IP's bij elkaar horen, dus bijvoorbeeld 2001:db8:2::192:168:10:20. Mogelijkheden genoeg om het op te lossen, vanaf ::1 beginnen met nummeren kan natuurlijk ook nog. Ik zou in ieder geval geen EUI-64 gebruiken, dan ben je te afhankelijk van de gebruikte hardware.

Zoals ik al schreef, het hangt helemaal van je netwerktopologie en wat je ISP je biedt af. Een hapklaar advies is dus wat lastig, aangezien het teveel afhangt van wat je precies wil en hebt, maar mogelijk heb je hier iets aan.

johan.smits
29/07/10, 10:33
TVI dank je voor de goede uitleg.
Wellicht helpt het als ik mijn adressen doorgeef:
* Range: 2a01:7c8:1:128::/64
* Gateway: 2a01:7c8:1:128::1/64
Deze heb ik van TransIp gekregen.

Ik heb nu op de Router ETH1 2a01:7c8:1:128::2 actief staan.
Welk adres kan ik op ETH0 (LAN) zetten?
En welke Adres reeks kan ik dan voor de LAN clients gebruiken?

Beperking van poorten en toegang kan ik dan regelen met ip6tables en the forward table?

johan.smits
29/07/10, 23:12
ik heb een deel werkend gekregen.
Via mijn ipv4 to ipv6 tunnel heb ik een /48 routed range ontvangen en nu kan ik met mijn clients op ipv6 met ipv6 server's communiceren.
Is eigenlijk piece of cake.

Nu vroeg ik me af of ik dit met de adres reeks van TransIp ook kan doen.
Kan ik hier van de 64 reeks een 48 reeks uit destilleren?

Vraag 2, als ik nu mijn PC op ipv6 only instel. Hoe moet ik mijn router configureren als ik een ipv4 adres wil benaderen?

tvi
02/08/10, 13:00
ik heb een deel werkend gekregen.
Via mijn ipv4 to ipv6 tunnel heb ik een /48 routed range ontvangen en nu kan ik met mijn clients op ipv6 met ipv6 server's communiceren.
Is eigenlijk piece of cake.


mooi :)



Nu vroeg ik me af of ik dit met de adres reeks van TransIp ook kan doen.
Kan ik hier van de 64 reeks een 48 reeks uit destilleren?


Ehm, een /64 is kleiner dan een /48... you do the math ;)



Vraag 2, als ik nu mijn PC op ipv6 only instel. Hoe moet ik mijn router configureren als ik een ipv4 adres wil benaderen?
Daar heb ik je in een eerdere posting al antwoord op gegeven, zoek even terug over mijn opmerkingen over o.a. NAT. Korte samenvatting: you shouldn't be wanting this... ik snap nog steeds niet helemaal wat je nou aan 't doen bent, de ene keer heb je 't over dual stack, nu weer over IPv6 only. Anyway, ik zou nu zeker nog niets IPv6-only gaan doen.

johan.smits
17/12/10, 11:25
Om een oude post weer leven in te blazen.
Zoals jullie wellicht hebben gemerkt heeft TransIp ipv6 officieel in gebruik genomen.

Nu heb ik deze adressen geconfigureerd op onze proxy servers op zo IPV6 op onze webdiensten te voorzien.

Maar nu wil ik ook de servers achter de routers (welke voor IPv4 als Nat servers functioneren) IPv6 ook laten routeren.
Niet met nat maar native.

Ik heb een 2a01:7c8:c060:1220::/64 van TransIp gekregen als range.
Nu wil ik de router (ubuntu linux) het publiek adres 2a01:7c8:c060:1220::1 geven.
Intern wil ik gebruiken: 2a01:7c8:c060:1220:1::1
Nu krijg ik communicatie intern werkend maar communicatie naar buiten niet.
Ik zie met TCPdump op de interne interaface het volgende met een ping naar de transip router:

09:21:19.696489 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 1, length 64
09:21:20.702836 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 2, length 64
09:21:21.702572 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 3, length 64
09:21:22.702474 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 4, length 64
09:21:23.702451 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 5, length 64
09:21:24.692397 IP6 fe80::5054:ff:fe45:94e8 > 2a01:7c8:c060:1220:1::1: ICMP6, neighbor solicitation, who has 2a01:7c8:c060:1220:1::1, length 32
09:21:24.692484 IP6 2a01:7c8:c060:1220:1::1 > fe80::5054:ff:fe45:94e8: ICMP6, neighbor advertisement, tgt is 2a01:7c8:c060:1220:1::1, length 24

En op de externe interface:

09:21:30.702386 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 12, length 64
09:21:31.702439 IP6 2a01:7c8:c060:1220:1::41 > 2a01:7c8:c060::1: ICMP6, echo request, seq 13, length 64
09:21:32.089951 IP6 2a01:7c8:c060::1 > ff02::1:ff00:41: ICMP6, neighbor solicitation, who has 2a01:7c8:c060:1220:1::41, length 32

Het lijkt erop dat de router niet doorgeeft waar 2a01:7c8:c060:1220:1::41 te vinden is en dus de routering terug naar het lan niet werkt.

Moet ik een extra route opnemen?

Wido
17/12/10, 11:36
Routeert TransIP het subnet naar jouw toe, het lijkt me niet als ik het zo zie? Je hebt geen een /64 gekregen, nietwaar?

johan.smits
17/12/10, 11:50
Routeert TransIP het subnet naar jouw toe, het lijkt me niet als ik het zo zie? Je hebt geen een /64 gekregen, nietwaar?
2a01:7c8:c060:1220::/64 heb ik gekregen.
En zo moet ik hem instellen: op de interface:

2a01:7c8:c060:1220::1/48 gateway: 2a01:7c8:c060::1

Wido
17/12/10, 12:56
Ja, maar ze routeren niets naar jouw server toe, daarom werkt jouw setup niet. Ze moeten een (static) route maken naar je server toe met een apart subnet.

johan.smits
17/12/10, 13:04
Ja, maar ze routeren niets naar jouw server toe, daarom werkt jouw setup niet. Ze moeten een (static) route maken naar je server toe met een apart subnet.

Dit is de enigste manier?

En is er een mogelijkheid tot ouderwetse NAT oplossing?
Meet private IPv6 (ala 192.168) reeks?

Unixboy
17/12/10, 14:36
IPv6 kent geen 'ouderwetse' NAT.

johan.smits
17/12/10, 14:42
ik bedoel een NAT like oplossing.
Of is een transparante firewall de enigste oplossing?

tvi
18/12/10, 14:47
Je zou ULA adressen aan je 'binnenkant' kunnen gebruiken, maar echt, NAT, WAAROM? Het levert meer ellende op dat het oplost. Regel gewoon dat die /64 naar je firewall gerouteerd wordt, dan heb je aan LAN en WAN zijde gewoon gerouteerde adressen. IPv6 biedt je de mogelijkheid om netwerken netjes in te richten en niet met NAT te hoeven rommelen, gebruik die, in plaats van vast te houden aan wat in IPv4 een noodzaak was.

Wat Wido en ik je tot nu toe geprobeerd hebben uit te leggen is overigens absoluut geen transparante firewall. Het is een simpele, routed oplossing.

Trouwens, je citeert eerder (#26) dat je een /64 gekregen hebt, maar geef je een subnet van /48. Hoe zit het nou?

johan.smits
19/12/10, 11:03
Trouwens, je citeert eerder (#26) dat je een /64 gekregen hebt, maar geef je een subnet van /48. Hoe zit het nou?

Van TransIp hebben we inderdaad een /64 gekregen. Echter moeten de adressen ingesteld worden met een /48 omdat de router buiten de range bevind.

Zie help TransIp:

Waarom zie ik als subnet /48 staan terwijl ik een /64 IPv6-range heb?

Omdat op onze colocated racks een gedeelde /48 range is geconfigureerd staat er als subnet/prefixlen /48 vermeld in het overzicht. Dit is, omdat de default gateway buiten de toegewezen /64 range ligt.
Bij het configureren van het ip-nummer op uw apparatuur dient u er hierom rekening mee te houden om als prefixlen /48 op te geven.


Ik ga vragen of het mogelijk is deze reeks te routeren.

Indien dit niet is, kan ik de ULA adressen intern gebruiken maar middels een router (NAT/Masquerade) voorzien van IPv6 internet toegang?

Ik heb niet zo'n problemen met NAT in mijn omgeving. Wellicht komt het omdat ik dit allang gewend ben.

Rob77
19/12/10, 16:32
Iedereen is zo onderhand wel gewend aan NAT op v4, en juist dáárom is het zo prettig dat het in v6 niet hoeft/kan/whatever ;)

NAT was niet meer dan een lapmiddel ivm het tekort aan IPv4 adressen. Met v6 hebben we er voorlopig weer even genoeg.

Wido
20/12/10, 23:15
AUB, GEEN NAT! Harder dan dat kan ik het niet schreeuwen.

Stel op je eth0 als adres in: 2a01:7c8:c060:1220::1

Laat vervolgens (als voorbeeld), TransIP 2a01:7c8:c060:1221::/64 routeren naar 2a01:7c8:c060:1220::1

Op je eth1 stel je in als adres: 2a01:7c8:c060:1221::1

Zet nu /proc/sys/net/ipv6/conf/default/forwarding op 1 en je moet kunnen routeren op je server. Je servers kan je vervolgens addressen uit 2a01:7c8:c060:1221::/64 geven.

Via ip6tables kun je vervolgens een firewall bouwen :) Veilig, mooie oplossing en vooral geen NAT :)

Domenico
20/12/10, 23:35
Kan wel hoor. ;)


AUB, GEEN NAT! Harder dan dat kan ik het niet schreeuwen.

johan.smits
20/12/10, 23:48
Kan wel hoor. ;)
Kun je wellicht een korte uitleg geven? Zodat ik weet begrijp hoe het werkt.

Heb bij TransIp aangevraagd voor de routering, nu even afwachten...

ascent
21/12/10, 11:16
AUB, GEEN NAT! Harder dan dat kan ik het niet schreeuwen.

Stel op je eth0 als adres in: 2a01:7c8:c060:1220::1

Laat vervolgens (als voorbeeld), TransIP 2a01:7c8:c060:1221::/64 routeren naar 2a01:7c8:c060:1220::1

Op je eth1 stel je in als adres: 2a01:7c8:c060:1221::1

Zet nu /proc/sys/net/ipv6/conf/default/forwarding op 1 en je moet kunnen routeren op je server. Je servers kan je vervolgens addressen uit 2a01:7c8:c060:1221::/64 geven.

Via ip6tables kun je vervolgens een firewall bouwen :) Veilig, mooie oplossing en vooral geen NAT :)

Daarnaast is 't ook niet onverstandig om de IP-adressen die je niet gebruikt, op de router te blackholen, anders gaan ze terug via je default route en dan krijg je een hoop troep op je netwerk.

johan.smits
21/12/10, 23:08
Daarnaast is 't ook niet onverstandig om de IP-adressen die je niet gebruikt, op de router te blackholen, anders gaan ze terug via je default route en dan krijg je een hoop troep op je netwerk.

Hoe kan ik dit blackholen het beste doen?
Nadat ik 1 route accepteer alle andere droppen binnen IPtables of binnen de routering?

Wido
22/12/10, 00:03
Ik zou met ip6tables AL het verkeer blokkeren en alleen toestaan naar hosts/poorten die jij specificeert, dan moet je dat probleem ook oplossen.

johan.smits
22/12/10, 01:27
Antwoord van TransIp:

Dit is alleen mogelijk bij een private rack.
Bij een colo (1 t/m 20 U) maakt het IPv6 block deel uit van een /48 die op het colorack geconfigureerd is. Elke colo in dat rack krijgt daarbinnen een /64 toegewezen, maar zoals u zelf ook wel gemerkt zult hebben moet u als prefixlen nog steeds die /48 opgeven.
Hierdoor is het voor ons onmogelijk om een enkele /64 uit deze /48 naar een specifieke colo te routeren.


Dit is nu vervelend omdat ik geen private rack heb.
Welke opties blijven er over?

NAT ondanks het duidelijke afraden
Bridge (transparante firewall)

ascent
22/12/10, 10:53
Ik zou met ip6tables AL het verkeer blokkeren en alleen toestaan naar hosts/poorten die jij specificeert, dan moet je dat probleem ook oplossen.

Werkt uiteraard allebei, ik los 't op met een blackhole routering. Wat zou "beter" zijn, vraag ik me nu even af? Beter in de termen van systeembelasting cq. hoelang een pakketje wat niet verder kan in je router blijft hangen, etc?

visser
29/12/10, 18:11
Antwoord van TransIp:


Dit is nu vervelend omdat ik geen private rack heb.
Welke opties blijven er over?

NAT ondanks het duidelijke afraden
Bridge (transparante firewall)


Hier zat ik onlangs wat over te lezen. (nog geen hands on mee).
Bijna net zoals je het in IPv4 zou oplossen...

Stel, je ISP heeft een /24 subnet, en geeft jou vier IPs daaruit, die jij op servers achter een router/firewall server wilt gebruiken...
Bij IPv4 gebruik je dan (evt) proxy arp, en wat statische routes.

Bij IPv6 kun je proxy-NDP (neighbour discovery protocol) gebruiken, want NDP is het V6 equivalent van arp.

De beste webpagina hierover lijkt
http://linux-attitude.fr/post/proxy-ndp-ipv6
te zijn. (niet vaak, dat je op Franse pagina's moet zijn).
Blijkbaar heeft de franse v6-leverende ISP ook een model zonder routering naar de klant-router/firewall.
Ik heb nog niet goed kunnen opmaken of je proxy'd voor een heel subnet, of voor een host adres. Let op dat je de privacy-feature van V6 uitzet als je proxy per-adres is en niet per subnet.

Maar het blijven lelijke kludges, als je een aantal adressen uit een plat subnet door een laag-3 device heen wilt 'routeren' naar achterliggende hosts.

Rob77
29/12/10, 19:28
Antwoord van TransIp:


Dit is nu vervelend omdat ik geen private rack heb.
Welke opties blijven er over?

NAT ondanks het duidelijke afraden
Bridge (transparante firewall)



Dan zou ik zeggen zet een transparante firewall in.

pierce
29/12/10, 19:37
Dan zou ik zeggen zet een transparante firewall in.

dat kan dus niet, je gaat dan immers routeren en dat doen ze niet voor losse colo klanten.



Bij een colo (1 t/m 20 U) maakt het IPv6 block deel uit van een /48 die op het colorack geconfigureerd is. Elke colo in dat rack krijgt daarbinnen een /64 toegewezen, maar zoals u zelf ook wel gemerkt zult hebben moet u als prefixlen nog steeds die /48 opgeven.
Hierdoor is het voor ons onmogelijk om een enkele /64 uit deze /48 naar een specifieke colo te routeren.

Wido
29/12/10, 20:55
dat kan dus niet, je gaat dan immers routeren en dat doen ze niet voor losse colo klanten.
Uh, niet met een transparante firewall?

Neem een machine met minimaal 3 NIC's.

Via bridge-utils maak je een bridge tussen eth0 en eth1, daar laat je je verkeer dan doorheen gaan. eth2 gebruik je dan om je firewall via te beheren.

Mwa, bedenk me net, het kan zelfs met 2 NIC's :)

The-BosS
29/12/10, 21:10
Uh, niet met een transparante firewall?

Neem een machine met minimaal 3 NIC's.

Via bridge-utils maak je een bridge tussen eth0 en eth1, daar laat je je verkeer dan doorheen gaan. eth2 gebruik je dan om je firewall via te beheren.

Mwa, bedenk me net, het kan zelfs met 2 NIC's :)

Kan inderdaad ook met 2 nic's, gewoon het management ip binden op de bridge interface ipv op de nic's.

Rob77
30/12/10, 13:40
Ik zie dat Monowall kan bridgen (http://doc.m0n0.ch/handbook/examples-filtered-bridge.html) , dan alleen nog de vraag of dat ook met v6 goed gaat.

Dan zou je een simpele firewall met webgui hebben, welke draait op een 1U bakje met compact flash ipv een harddisk bijvoorbeeld.

Jefke
30/12/10, 15:28
Ik zie dat Monowall kan bridgen (http://doc.m0n0.ch/handbook/examples-filtered-bridge.html) , dan alleen nog de vraag of dat ook met v6 goed gaat.
.

Bridge = Layer2 en weet dus niets van IP adressen af. IPv4 of IPv6 maakt dus niets uit voor een bridge.

Wido
30/12/10, 16:59
Bridge = Layer2 en weet dus niets van IP adressen af. IPv4 of IPv6 maakt dus niets uit voor een bridge.Natuurlijk wel, als je transparant wil gaan filteren over een Layer2 bridge dan moet de filtering engine wel IPv4 of IPv6 snappen, anders is er zo weinig te filteren.

Je zal de firewall niet als hop op de route zien, maar deze zal wel degelijk elk pakketje/connectie inspecteren, daarvoor is dus wel protocol kennis nodig op de bridge.

Met Linux kan dit in ieder geval prima dmv bridge-utils en ip6tables.

Jefke
31/12/10, 07:52
Natuurlijk wel, als je transparant wil gaan filteren over een Layer2 bridge dan moet de filtering engine wel IPv4 of IPv6 snappen, anders is er zo weinig te filteren.

Je zal de firewall niet als hop op de route zien, maar deze zal wel degelijk elk pakketje/connectie inspecteren, daarvoor is dus wel protocol kennis nodig op de bridge.

Met Linux kan dit in ieder geval prima dmv bridge-utils en ip6tables.

Dat wil niet zeggen dat de bridge zelf iets van IP af weet. Net als een ethernet interface is een bridge puur layer2.

Rob77
31/12/10, 09:29
Dat wil niet zeggen dat de bridge zelf iets van IP af weet. Net als een ethernet interface is een bridge puur layer2.

We noemen het hier bridge, en ik vermoed dat mensen twee dingen door elkaar halen;
- een ethernet bridge; geen besef van protocollen, alleen van (ethernet)frames
- een firewall in bridge mode; wel degelijk besef van protocollen, aangezien deze actief hierin moet kunnen filteren

Je kunt in je firewall moeilijk instellen 'inkomend geen tcp protocol 22' als ie geen IP snapt ;)