[FreeBSD] IPv6 uitschakelen / juist configureren

Pagina: 1
Acties:

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Stop AI Slop

Topicstarter
Ik heb hier een FreeBSD 7.1 RELEASE draaien op VMWare Server 2, met een bridged netwerkverbinding. De server is geconfigureerd met een vast IP-adres, en gebruikt als nameserver de ADSL-router.

Wanneer er een bestand ge'fetch'd moet worden, duurt dit veel te lang. Een sessie met wireshark laat het volgende zien:
code:
1
2
3
4
5
6
7
8    2.912356    192.168.1.211    192.168.1.1    DNS    Standard query A www.google.nl
9    2.912790    192.168.1.1    192.168.1.211    DNS    Standard query response A 74.125.77.104
10    2.912993    192.168.1.211    192.168.1.1    DNS    Standard query AAAA www.google.nl
11    2.913494    192.168.1.1    192.168.1.211    DNS    Standard query response PTR www.google.nl
13    7.925880    192.168.1.211    192.168.1.1    DNS    Standard query AAAA www.google.nl
14    7.926388    192.168.1.1    192.168.1.211    DNS    Standard query response PTR www.google.nl
15    17.955291    192.168.1.211    74.125.77.104    TCP    53477 > http [SYN] Seq=0 Win=65535 Len=0 MSS=1460 WS=3 TSV=1946906 TSER=0

Er wordt dus eerst een IPv4-adres opgevraagd, direct daarna een IPv6-adres, en vijf seconden later wordt het IPv6-adres nogmaals opgevraagd. Tien seconden daarna wordt de IPv4-verbinding pas tot stand gebracht. Dit gebeurt iedere keer dat fetch of een willekeurig ander programma internettoegang nodig heeft.

Wanneer ik fetch met de optie -4 uitvoer wordt alleen het IPv4-adres opgevraagd en start de download direct.

Mijn ifconfig ziet er zo uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
# ifconfig
le0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:0c:29:b3:00:d9
        inet 192.168.1.211 netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect
        status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000


Wat moet ik nu doen om de ervoor te zorgen dat alle programma's (ook PHP heeft er bijvoorbeeld last van bij het aanroepen van URI's) in één keer IPv4 gebruiken?

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


  • FiscBiker
  • Registratie: April 2003
  • Laatst online: 14:09
Een nieuwe kernel bouwen zonder
options INET6

  • r0b
  • Registratie: December 2002
  • Laatst online: 09:24

r0b

Probeer dit eens?

[google=freebsd disable ipv6], 2e 3e hit. :P
FiscBiker schreef op maandag 23 februari 2009 @ 12:54:
Een nieuwe kernel bouwen zonder
options INET6
Is dat niet een beetje een "met een hamer past alles"-oplossing :? Ja, het werkt, maar is nogal onnodig voor het alleen uitschakelen van IPv6 me dunkt. Zeker gezien je het in de toekomst wel nodig gaat hebben.

[ Voor 60% gewijzigd door r0b op 23-02-2009 13:02 ]


  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Stop AI Slop

Topicstarter
Sorry, ik was nog wat informatie vergeten. De optie om de kernel opnieuw te compileren heb ik overwogen, maar dat gaat me nog een beetje te ver.

In mijn /etc/rc.conf staat uiteraard ipv6_enable = "NO", maar fetch blijft (net als bijvoorbeeld php) lookups doen naar IPv6-adressen.

De pf-optie heb ik bekeken en nu ook toegepast, maar de server blijft IPv6-lookups doen.

Maar goed, het volledig uitschakelen van IPv6 lijkt me ook een beetje overkill, en ik kom liever achter de oorzaak dan dat ik aan symptoombestrijding doe...

En ook na volledig uitschakelen worden er nog AAAA-lookups gedaan...

[ Voor 28% gewijzigd door CodeCaster op 23-02-2009 13:26 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


  • FiscBiker
  • Registratie: April 2003
  • Laatst online: 14:09
CodeCaster schreef op maandag 23 februari 2009 @ 13:22:
En ook na volledig uitschakelen worden er nog AAAA-lookups gedaan...
Uiteraard, het doel was dan ook om de vertraging te voorkomen.

Om helemaal IPv6-loos te worden moet je ook world rebuilden met extra opties in make.conf, maar dat levert meer problemen op dan het oplost.

Die firewall truc werkt natuurlijk alleen als je een firewall hebt draaien (is niet standaard). En om een firewall te draaien doe je er verstandig aan die middels een eigen kernel te activeren. Een kernel-rebuild is geen grote ingreep!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Stop AI Slop

Topicstarter
Wanneer ik de DNS-server van mijn internetprovider als nameserver opgeef in m'n resolv.conf werkt het wel. Ik heb een Vigor 2700 als router, die blijkt de IPv6-lookups nogal te vernachelen.

nslookup op Vista SP1 loopt er ook op vast, behalve als ik ook daar de DNS-servers van de ISP instel.

Ik denk dat ik het probleem dus wel bij de router neer durf te leggen :)

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...

Pagina: 1