[Info] [Trick] raDVD und gw6c getrennt verwalten... =)

MrTweek1987

Neuer User
Mitglied seit
2 Mai 2011
Beiträge
116
Punkte für Reaktionen
0
Punkte
0
Da mich einige fragten, wie man das getrennte verwalten per web-IF mit dem gw6c und raDVDermöglicht, muss man vor dem bauen des Images die radvd_conf abändern...

Die rot makierten Einträge sind wichtig für das verteilen von Adressen, wenn wir Clients versorgen wollen...

Code:
#!/bin/sh

cat << EOF
interface $RADVD_INTERFACE
{
	
	MinRtrAdvInterval 40;
	MaxRtrAdvInterval 60;
	[COLOR="#FF0000"]AdvManagedFlag off; [/COLOR] # Wir haben kein DHCP-Server
	[COLOR="#FF0000"]AdvOtherConfigFlag off;[/COLOR]	 # Wir haben kein DHCPv6-Server
	AdvHomeAgentFlag off;
	AdvHomeAgentInfo off;
	[COLOR="#FF0000"]UnicastOnly on;[/COLOR] # brauchte ich nicht aber wer es braucht...
	AdvReachableTime 3600000;
	[COLOR="#FF0000"]AdvSendAdvert on;[/COLOR] # sende router-Adverts
	AdvCurHopLimit 64;
	AdvDefaultLifetime 180;
	AdvDefaultPreference medium;
	[COLOR="#FF0000"]AdvSourceLLAddress on;[/COLOR] # Die Quell-Adresse mitsenden (Router-IP) -> Gateway
	AdvMobRtrSupportFlag off;
	
	
	prefix $RADVD_PREFIX
	{
		[COLOR="#FF0000"]AdvOnLink on;[/COLOR]
		[COLOR="#FF0000"]AdvAutonomous on;[/COLOR] # Erlaube Clients sich eine Adresse zu generieren!
		[COLOR="#FF0000"]AdvRouterAddr off;[/COLOR] # Sende anstatt der Router-Adresse das Gesamte Präfix!!!
	};
	
	RDNSS 2001:********************************* # DNS-Server
	{
		AdvRDNSSOpen off;		
	};
	
	clients # wer sicherheit braucht bzw nicht allen clients adressen geben will trägt hier die fe80-Adressen der clients ein!
	{
		fe80::#Router#-Addy
		fe80::#Clients#-Addy
	};
};
EOF
Mittels dieser Config habe ich den raDVD durchkonfiguriert... Damit radvd die config auch nutzt wenn gw6c läuft, muss man in der "/usr/share/gw6/template/linux.sh" muss man folgenden Code löschen:

Code:
  # Router configuration if required
if [ X"${TSP_HOST_TYPE}" = X"router" ]; then

   Display 1 "Router configuration"

   # Tell kernel to forward IPv6 traffic.
   Exec $sysctl -w net.ipv6.conf.all.forwarding=1

   # Blackholing on interface lo, if prefixlen is not 64.
   if [ X"${TSP_PREFIXLEN}" != X"64" ]; then
     # Sometimes this route does not show when using 'netstat -rn6'.
     ExecNoCheck $route -A inet6 add $TSP_PREFIX::/$TSP_PREFIXLEN dev lo 2>/dev/null
   fi

   # Add prefix::1 on advertising interface. Clean up before.
   OLDADDR=`$ifconfig $TSP_HOME_INTERFACE | grep "inet6.* $PREF" | sed -e "s/^.*inet6 addr: //" -e "s/ Scope.*\$//"`
   if [ ! -z $OLDADDR ]; then
      Display 1 "Removing old IPv6 address $OLDADDR"
      Exec $ipconfig -6 addr del $OLDADDR dev $TSP_HOME_INTERFACE
   fi
   Display 1 "Adding prefix to $TSP_HOME_INTERFACE"
   Exec $ifconfig $TSP_HOME_INTERFACE add $TSP_PREFIX::1/64

   # Stop radvd daemon if it was running. Twice.
   if [ -f $rtadvdconfigfile ]; then
     KillProcess $rtadvdconfigfile
   fi

   # Create new radvd configuration file.
   cat > "$rtadvdconfigfile" <<EOF
##### rtadvd.conf made by Gateway6 Client ####
interface $TSP_HOME_INTERFACE
{
  AdvSendAdvert on;
  prefix $TSP_PREFIX::/64
  {
    AdvOnLink on;
    AdvAutonomous on;
  };
};
EOF

   # Start the radvd daemon.
   Display 1 "Starting radvd: $rtadvd -p $rtadvd_pid -C $rtadvdconfigfile"
   Exec $rtadvd -p $rtadvd_pid -C $rtadvdconfigfile
fi
das ermöglicht uns beide daemons unabhängig zu steuern und raDVD nutzt die oben gezeigte Config.
Wer sich jetzt fragt warum das ersetzen von adressen ebenfalls fehlt, dem sei gesagt: raDVD macht das von selbst!

Das gw6c-Präfix trägt man dann ganz normal im web-if bei radvd ein... (länge ist immer 64!)
 
Zuletzt bearbeitet: