OpenWrt

OpenWrt é um sistema operativo usado principalmente em dispositivos embarcados a rota de tráfego de rede. Os principais componentes são o kernel do linux , uClibc e BusyBox. Todos os componentes foram optimizados para o tamanho, a ser pequeno o suficiente para caber o armazenamento e a memória disponível em routers domésticos limitados sendo configurado através de uma interface de linha de comandos, ou um interface web de nome (LuCI). Existem cerca de 2000 pacotes de software opcionais e disponíveis para instalação através do opkg sistema de gerenciamento de pacotes típico de sistemas operativos linux.
Este sistema operativo pode ser executado em routers CPE, gateways residenciais , smartphones (por exemplo, Neo FreeRunner), computadores de bolso (por exemplo, Ben NanoNote ), e pequenos computadores portáteis (por exemplo, One Laptop per Child (OLPC) ). Mas também é possível ser instaldo em computadores comuns (por exemplo, x86 ). Diariamente várias correcções e actualizações são incluídas no kernel linux e este sistema operativo é a base do firmware mesh de nome MvWrt utilizado na wirelesspt.net.
Características




OpenWrt segue a filosofia e é conhecido por uma abundância de opções, recursos incluem:
- O sistema de arquivos de raiz gravável, permite aos utilizadores adicionar, remover ou modificar qualquer arquivo. JFFS2 suporta Flash wear leveling.
- O gerente de pacotes opkg, semelhante ao dpkg, permite aos usuários instalar e remover software. O repositório de pacotes contém cerca de 2.000 pacotes. Isto contrasta com firmwares baseados em linux baseado em somente leitura sistemas de arquivos sem a possibilidade de modificar o software instalado sem uma imagem de firmware completa reconstrução e intermitente.
- Um conjunto de scripts chamado UCI (interface de configuração unificada) destinado a unificar e simplificar a configuração de todo o sistema extensível configuração dos drivers de hardware, por exemplo, todo construído em comutadores de rede e capacidades VLAN, WNICs, modems, dsl, FX, botões de hardware disponíveis, etc.
Contém enormes possibilidades para configurar a rede como:
- Encaminhamento através iproute2 , Quagga , BIRD , etc
- Redes mesh através batmand batman-adv, olsrd e IEEE 802.11s e capacidades WNIC
- Funcionalidade sem fio, por exemplo, tornar o acto dispositivo como um repetidor sem fio, um ponto de acesso sem fio, uma ponte sem fio, um portal cativo, ou uma combinação destes com, por exemplo ChilliSpot , WiFiDog Captive Portal, etc
- Stateful firewall , NAT e Port Forwarding através netfilter dinamicamente configurado porta encaminhamento protocolos UPnP e NAT-PMP através upnpd, etc
- Porto bate via knockd e TR-069
- IPS através do Snort (software)
- Administração de filas ativo (AQM) através do programador de rede do kernel do linux, com muitas filas disponíveis. CODEL foi portado para o kernel 3.3. Este encapsula Traffic shaping para assegurar uma distribuição justa de largura de banda entre vários usuários e qualidade de serviço para uso simultâneo de aplicações como VoIP , jogos online e streaming media, sem experimentar os impactos negativos da saturação do link.
- O balanceamento de carga para uso com vários ISPs
- IP tunneling extensível em tempo real de monitorizarão de rede e estatísticas através por exemplo RRDtool , collectd , Nagios , Munin Lite , Zabbix , etc
- Domain Name System e dhcp através Dnsmasq , MaraDNS , etc
- dns dinâmico serviços para manter um nome de domínio fixo com um ISP que não fornece IP endereço estático.
OpenWrt suporta qualquer hardware que tenha suporte linux; dispositivos que podem ser ligados por exemplo, sobre usb a um dispositivo incorporado incluem:
- Impressoras, modems de banda larga móvel, webcams, placas de som, etc.
Pacotes de software notáveis para utilizar este hardware são:
- Compartilhamento de arquivos via SAMBA ) (compatível com Windows), NFS e FTP , partilha de impressora sobre os servidores de impressão CUPS (spooling) ou p910nd (não-spool)
- PulseAudio , Music Player Daemon , áudio / vídeo streaming via DLNA / UPnP, iTunes ( DAAP ) servidor
- Asterisk (PBX)
- MQ Telemetry Transport
- Interface gráfico em Ajax, graças ao projeto LuCI
- Correcções regulares de bugs e actualizações, até mesmo para dispositivos não suportados pelos respectivos fabricantes
Interface Web
Antes do lançamento 8.09, OpenWrt tinha um interface web mínimo. Na versão 8.09 já temos um novo interface web, mais funcional. Este interface é baseado em LuCI, um framework MVC escrito em Lua.
- O projecto X-Wrt fornece uma interface web alternativo, chamado webif nos repositórios de pacotes, para a versão atual e anterior de OpenWrt
- O Gargoyle é um interface web para OpenWRT com uma forte ênfase na usabilidade. Foi inicialmente disponível como um conjunto de pacotes para OpenWrt. Como o autor do Gargoyle começou a fazer modificações no layout do OpenWrt sistema base, o sistema de pacotes foi descartado e os downloads disponíveis actualmente são imagens completas de firmware. Gargoyle faz amplo uso de JavaScript, para descarregar o trabalho tanto quanto possível para o computador cliente, e é focada na facilidade de uso, que se esforça para chegar a um nível comparável à sensação aparelho de firmware de um router comercial.
- O Freifunk é especializado no desenvolvimento e na programação de firmware software-livre em linux com base no protocolo olsr para redes sem fio em malha, de computadores. Várias cidades e grupos já adotaram esta maneira de criar comunidades de pessoas com objetivos comuns de convivência e tecnologia. Para usar este software, deve-se ter um router que aceite o sistema operacional OpenWrt.
- O MvWrt é um firmware específico para redes mesh que utilizem o protocolo de roteamento batman-adv desenvolvido por cmsv para o projecto mvnet wirelesspt.net fundado em Moitas Venda. Este firmware entrou em produção a 15 de Janeiro de 2013.
História
O projeto surgiu após linksys construiu o firmware para o seu router wrt54G wireless a partir do código disponível publicamente licenciado sob a GPL. De acordo com os termos dessa licença, o fabricante foi obrigados a fazer o código-fonte da sua versão modificada disponível sob a mesma licença, permitindo que os programadores independentes para criar versões adicionais com derivativos. O apoio foi originalmente limitado à série wrt54G, mas desde então tem sido expandida para incluir muitos outros chipsets, fabricantes e tipos de dispositivos, incluindo OpenMoko e outros telefones celulares.
Com esse código como uma base e, posteriormente, como referência, os programadores criaram uma distribuição que oferece muitas características não encontradas anteriormente em routers no nível do consumidor. Alguns recursos de software proprietário anteriormente requerido. Antes da introdução do OpenWrt 8,09, usando linux 2.6.25, e do módulo do kernel b43, WLAN para muitos routers baseados em Broadcom só estava disponível através do módulo wl.o proprietário, que também foi fornecido apenas para linux 2.4.
Os nomes de código das versões OpenWrt são nomeados após bebidas alcoólicas e geralmente incluindo suas receitas na tela de login do ssh (White Russian , Kamikaze , Backfire , Attitude Adjustment, etc).