Para configurar olsrd utilizando APRouter Pro
usada a verso 6.1 APRouter e assumindo tudo como padro para comear. Assumindo o bsico, 2 ns, mesh... N 1: conectado internet (atravs de qualquer uma das portas LAN). Neste exemplo, a principal subrede Lan [Link]/[Link] com seu roteador para internet em [Link]. N 2 : atuando apenas como n repetidor mesh. O bsico : Certificar-se de que o arquivo [Link] tenha a configurao para para o n principal (N 1 - o aparelho ligado Internet) tem que haver uma entrada HNA4 indicando que tem acesso internet ([Link]/[Link]). HNA4 para outros ns deve estar vazia. Certificar-se de que no arquivo de configurao [Link] tenha entrada para todas as interfaces "br0" e "wlan0". O modo de operao wireless tem que ser Client/Adhoc Ajustar o modo TCP para bridge Dar a cada n um endereo Lan diferente (o modo mais fcil definir as portas LAN como clientes DHCP assim cada um vai ter um endereo do nosso roteador principal). As configuraes de WAN no importam, mas voc ter que deixar marcado a opo (olsrd) na pgina WAN setup. Adicionar ifconfig wlan0 mais a configurao principal no script para ser executado cada vez que houver a reinicializao. Configurar o Watchdog para reiniciar caso haja alguma falhar por qualquer motivo. Testar...
1 Configurando o arquivo de configurao [Link]
Para editar o arquivo [Link] voc precisar usar ssh para isso use o PuTTY ou algum similar entrando com o usurio root e senha admin.
Agora v para o diretrio etc e comece a editar com o editor vi (desculpas por isso ... o vi considerado o pior editor em linha de comando, mas visto que tudo que existe eu estou com medo).
Role para a entrada 'Hna4 ...
Agora, para o N 1, voc precisa adicionar uma entrada que diz a rede OLSR que este o lugar onde o principal acesso Internet ([Link] [Link]). Instrues rpidas para o vi: mova o curso para onde voc quer adicionar. Em seguida, pressione ESC 'i' - o que ira coloca-lo no modo de insero. Agora, quando voc digitar ento, magicamente, o texto dever aparecer na tela (embora eu concordo que o vi realmente uma m****!). Se voc pressionar ESC 'x', ento ele vai para Modo de apagar e, cada vez que voc pressionar 'x' que apaga o caractere sob o cursor. No entanto, freqentemente o visor fica travado de forma que vale a pena fazer um pequeno nmero Page Downs e Ups de tempos em tempos para fazer certeza de que est indo de acordo com o plano, Enfim ... esperamos
que voc possa gerenciar a adicionar uma linha para a sua rede! Para o N 2 todas as entradas na seo Hna4 deve ser comentadas (com '#' no incio da linha). Agora, desloque-se para a seo "interface"....
O objetivo aqui mudar na seo interface para que ele s tenha as interfaces br0 e wlan0 l. Ento, use o ESCAPE 'i' e/o ESCAPE 'x' comandos para editar a linha (eu sei que difcil, mas persevere!). Defina o mesma para ambos os N 1 e N 2.
Agora temos que escrever o arquivo e sair do editor. Pressione ESCAPE ': w' para gravar o arquivo. E ESCAPE ': q' para sair vi. Agora voc precisa garantir que o novo arquivo guardado na flash para isso digite o comando 'save'
Agora voc pode sair do PuTTY. A tamanho do arquivo [Link] ser listado no final do documento.
2 Configurao dos ns via interface web
Lembre-se, depois de fazer uma mudana em cada pgina da web, voc deve salvar as alteraes. Entre na pagina de configurao via seu navegador (IP padro [Link]).
V para Operation Mode certifique-se de estar como Bridge
V para Wireless / Basic - D um nome (por exemplo, N 1 para a unidade principal, conectado internet. N 2 para a agir como um repetidor) e, em seguida, certifique-se da configurao de cliente / ad hoc.
V para Configuraes TCP / IP / LAN Interface - atribua a cada n um endereo exclusivo. Voc pode atribuir a cada n um endereo da sua principal sub-rede ou configurar a interface LAN como um cliente DHCP (porm, se voc fizer isso,
ter que verificar no servidor DHCP qual o endereo atribuido).
Va para interface WAN
A interface WAN no realmente usada para as configuraes de IP etc .. so irrelevantes. O nico importante coisa fazer com que a caixa 'Ativar MESH (OLSRD) esteja assinalada. Agora, antes que a interface wlan0 carregue, voc precisa dar-lhe um endereo IP (OLSR um protocolo de roteamento isto significa que as interfaces precisam de endereos IP). Para fazer isso, voc pode adicionar uma simples linha no script principal de inicializao chamado [Link] no diretrio etc. O forma mais fcil de fazer isso atravs da interface web na pgina Management/Edit Script File:
Role para a parte inferior do script e adicionar uma linha extra... ifconfig wlan0 <ip address> Utilize um endereo IP que est na sua faixa principal mas fora daqueles usados pelo seu servidor DHCP (por exemplo nosso servidor s d at 100 endereos por isso qualquer endereo acima disto livre para uso esttico -- verificar com o seu sistema se no tiver a certeza!) Exemplo:
Para cada n utilize um endereo IP diferente (mas ainda na sua principal faixa).
Lembre-se de salvar o arquivo. Tambm uma boa idia configurar o Watchdog (isto ir reiniciar a unidade cada vez que encontrar algo errado com o link). Para fazer isso v para Management/Watchdog...
Voc precisar digitar um endereo IP para a unidade para verificar a conectividade. Eu sugiro o endereo de sua roteador (na sua rede principal). Verificar tambm e definir o tempo para um valor razovel (no pode ser um valor muito baixo para que depois a menor atraso ele comece a reiniciar): por exemplo nosso roteador [Link] mas utilize o seu prprio endereo de roteador.
Lembre-se de salvar as configuraes e ento finalmente aplicar as alteraes. Agora .... uma palavra de alerta, depois de ativar o modo Mesh e voc tiver ativado o modo debug no [Link] arquivo, ento, quando voc reiniciar a unidade, a interface web estar desativada!! Abaixo esto notas de agora para desativar o olsrd via ssh / comandos.
3
3.1
Testando
Conectividade Bsica isto Funciona?
Certifique-se de que voc salvou todas as configuraes e ento reinicie as unidades. Agora, se tudo est instalado e funcionando ento o teste bvio, basta ver se seu computador mvel conectou na rede mesh. Quando for conectado, ento, se o seu PC estiver configurado para obter IP automaticamente (atravs do DHCP), ento o PC deve obter um conjunto vlido IP e, em seguida, ser capaz de chegar para a Internet. 3.2 Checando OLSRD atravs de unidades remotas.
possvel executar a rede mesh em modo debug nos Aps, que ir registrar a conectividade da rede. Para fazer isso utilize o PuTTY para entrar modo de comando. Em seguida, digite o comando 'olsrd'. O olsrd ir ser executado e aparecer uma lista das interfaces
Abaixo mostra a sada de alguns segundos de execuo com a depurao ativada no arquivo [Link] ... --- 00:59:23.81 ---------------------------------------------------- LINKS IP address hyst LQ lost total NLQ ETX [Link] 0.000 0.200 0 2 1.000 5.00 [Link] 0.000 0.200 0 2 1.000 5.00 --- 00:59:23.81 ------------------------------------------------ NEIGHBORS IP address LQ NLQ SYM MPR MPRS will [Link] 0.200 1.000 YES NO NO 3 --- 00:59:23.81 ------------------------------------------------- TOPOLOGY Source IP addr Dest IP addr LQ ILQ ETX *** [Link] - 0.4.10 (Mar 8 2006) *** (ioctl)Adding route with metric 1 to [Link]/[Link] via [Link]/br0. (ioctl)Adding route with metric 1 to [Link]/[Link] via [Link]/br0. --- 00:59:25.53 ---------------------------------------------------- LINKS IP address hyst LQ lost total NLQ ETX [Link] 0.000 0.200 0 2 1.000 5.00 [Link] 0.000 0.300 0 3 1.000 3.33 --- 00:59:25.53 ------------------------------------------------ NEIGHBORS IP address LQ NLQ SYM MPR MPRS will [Link] 0.300 1.000 YES NO NO 3 --- 00:59:25.53 ------------------------------------------------- TOPOLOGY Source IP addr Dest IP addr LQ ILQ ETX *** [Link] - 0.4.10 (Mar 8 2006) *** (ioctl)Deleting route with metric 1 to [Link]/[Link] via [Link]/br0. (ioctl)Deleting route with metric 1 to [Link]/[Link] via [Link]/br0. (ioctl)Adding route with metric 1 to [Link]/[Link] via [Link]/br0. Add route([Link]): File exists (ioctl)Adding route with metric 1 to [Link]/[Link] via [Link]/br0.
Add route([Link]): File exists Acima voc pode ver as telas SSH, com olsrd no debug log em execuo e as entradas dos ns para unidades vizinhas. 3.3 Checando OLSRD atravs de um computador com Windows.
Voc pode testar adicionalmente executando o daemon olsrd switch em qualquer PC conectado malha (atravs da porta LAN do n ou sem fios a qualquer malha n). Voc pode fazer o download do olsrd daemon em [Link] Faa o download e instale este aplicativo. Em seguida, certifique-se que o PC tenha um endereo IP na mesma sub-rede que utilizado para os seus ns olsrd. Execute o olsrd switch.
Na lista de interfaces que voc deve ver o endereo IP da interface LAN do PC (eu tenho muita's!). Defina o Depurar Nvel de 1 e clique em Iniciar ... Agora v para a Aba Output...
Voc pode ver as outras interfaces OLSR listadas. No meu caso 0.22 LAN of my main node 0.179 the WLAN of my main node 0.24 LAN of my main node 0.178 the WLAN of my main node Alm disso, se eu olhar na aba Nodes verei...
Observe os endereos extras do n. Observe que HNA exibido ao lado da WLAN das minhas principais n. Alm disso note que as interfaces WLAN dos ns so agora mostrados como MID. A MID ou Multiple interface declaration(MID) uma interface esssecial em um n que esteja rodando OLSR. Se voc no pode ver todos seus ns, ento algo est errado.
Desabilitando Olsrd via SSH
Como mencionado acima, quando estiver ativada a rede mesh com debug selecionados no arquivo [Link] ento, quando voc reiniciar a unidade, a interface web estar desativada. Ento essas so algumas instrues de como usar o ssh (PuTTY) para desativar olsrd. Assim voc pode ento reiniciar a interface web e ir funcionar novamente. Por isso, use PuTTY para digitar o comando do dispositivo
Voc pode cessar definitivamente olsrd, editando o valor fixado no flash ou seja,
Agora salve as alteraes...
Outra opo, para parar temporariamente o olsrd apenas para matar esse processo usando o comando linux killall ....
Agora voce pode sair do PuTTY Se voc tiver desativado o olsrd mudando o valor da flash, ento voc vai precisa reiniciar para ver o efeito (embora, lembre-se, se voc tiver desativado a configurao ento voc ter de voltar a lig-lo na WAN pgina da web setup). Quando se trata de volta at a interface web deve estar funcionando. Se voc apenas utilizada killall para parar temporariamente o processo, em seguida, a interface web deve ser imediatamente habilitada.
Arquivo [Link]
# # [Link] OLSR daemon config file # # Lines starting with a # are discarded # # This file was shipped with olsrd 0.4.10-cvs # # This file is an example of a typical # configuration for a mostly static # network(regarding mobility) using # the LQ extention # Debug level(0-9) # If set to 0 the daemon runs in the background # Leave as 0 (off) for normal running DebugLevel 1 # IP version to use (4 or 6) IpVersion 4 # Clear the screen each time the internal state changes ClearScreen yes # HNA IPv4 routes # syntax: netaddr netmask # Example Internet gateway: # [Link] [Link] Hna4 { # Internet gateway: for main node ONLY [Link] [Link] # more entries can be added: # [Link] [Link] } # HNA IPv6 routes # syntax: netaddr prefix # Example Internet gateway: Hna6 { # Internet gateway: # :: 0 # more entries can be added: # fec0:2200:106:: 48 } # Should olsrd keep on running even if there are # no interfaces available? This is a good idea # for a PCMCIA/USB hotswap environment. # "yes" OR "no" AllowNoInt yes # TOS(type of service) value for # the IP header of control traffic. # If not set it will default to 16 #TosValue 16 # The fixed willingness to use(0-7) # If not set willingness will be calculated # dynamically based on battery/power status
# if such information is available Willingness 7 # Allow processes like the GUI front-end # to connect to the daemon. IpcConnect { # Determines how many simultaneously # IPC connections that will be allowed # Setting this to 0 disables IPC MaxConnections 0 # By default only [Link] is allowed # to connect. Here allowed hosts can # be added Host [Link] #Host [Link] # You can also specify entire net-ranges # that are allowed to connect. Multiple # entries are allowed # Net [Link] [Link] } # Wether to use hysteresis or not # Hysteresis adds more robustness to the # link sensing but delays neighbor registration. # Used by default. 'yes' or 'no' UseHysteresis no # Hysteresis parameters # Do not alter these unless you know # what you are doing! # Set to auto by default. Allowed # values are floating point values # in the interval 0,1 # THR_LOW must always be lower than # THR_HIGH. #HystScaling 0.50 #HystThrHigh 0.80 #HystThrLow 0.30 # Link quality level # 0 = do not use link quality # 1 = use link quality for MPR selection # 2 = use link quality for MPR selection and routing # Defaults to 0 LinkQualityLevel 2 # Link quality window size # Defaults to 10 LinkQualityWinSize 10 # Polling rate in seconds(float). # Default value 0.05 sec Pollrate 0.05 # TC redundancy # Specifies how much neighbor info should # be sent in TC messages # Possible values are:
# 0 - only send MPR selectors # 1 - send MPR selectors and MPRs # 2 - send all neighbors # # defaults to 0 TcRedundancy 2 # # MPR coverage # Specifies how many MPRs a node should # try select to reach every 2 hop neighbor # # Can be set to any integer >0 # # defaults to 1 MprCoverage 3 # Olsrd plugins to load # This must be the absolute path to the file # or the loader will use the following scheme: # - Try the paths in the LD_LIBRARY_PATH # environment variable. # - The list of libraries cached in /etc/[Link] # - /lib, followed by /usr/lib # Example plugin entry with parameters: #LoadPlugin "olsrd_dyn_gw.so.0.3" #{ # Here parameters are set to be sent to the # plugin. Theese are on the form "key" "value". # Parameters ofcause, differs from plugin to plugin. # Consult the documentation of your plugin for details. # Example: dyn_gw params # how often to check for Internet connectivity # defaults to 5 secs # PlParam "Interval" "40" # if one or more IPv4 addresses are given, do a ping on these in # descending order to validate that there is not only an entry in # routing table, but also a real internet connection. If any of # these addresses could be pinged successfully, the test was # succesful, i.e. if the ping on the 1st address was successful,the # 2nd won't be pinged # PlParam "Ping" "[Link]" # PlParam "Ping" "[Link]" #} # Interfaces and their rules # Omitted options will be set to the # default values. Multiple interfaces # can be specified in the same block # and multiple blocks can be set. # !!CHANGE THE INTERFACE LABEL(s) TO MATCH YOUR INTERFACE(s)!! # (eg. wlan0 or eth1): Interface "br0" "wlan0" {
# IPv4 broadcast address to use. The # one usefull example would be [Link] # If not defined the broadcastaddress # every card is configured with is used # Ip4Broadcast [Link] # IPv6 address scope to use. # Must be 'site-local' or 'global' # Ip6AddrType site-local # IPv6 multicast address to use when # using site-local addresses. # If not defined, ff05::15 is used # Ip6MulticastSite ff05::11 # IPv6 multicast address to use when # using global addresses # If not defined, ff0e::1 is used # Ip6MulticastGlobal ff0e::1 # Emission intervals. # If not defined, RFC proposed values will # be used in most cases. # Hello interval in seconds(float) HelloInterval 10.0 # HELLO validity time HelloValidityTime 100.0 # TC interval in seconds(float) TcInterval 3.0 # TC validity time TcValidityTime 30.0 # MID interval in seconds(float) MidInterval 5.0 # MID validity time MidValidityTime 30.0 # HNA interval in seconds(float) HnaInterval 5.0 # HNA validity time HnaValidityTime 30.0 # When multiple links exist between hosts # the weight of interface is used to determine # the link to use. Normally the weight is # automatically calculated by olsrd based # on the characteristics of the interface, # but here you can specify a fixed value. # Olsrd will choose links with the lowest value. # Weight 0 }