OpenWrt

Ir a: navegación, búsqueda de
OpenWrt
Openwrt Logo.svg
Openwrt-15.05-login.svg
Pantalla de login de OpenWrt 15.05 ("caos calmado")
Desarrollador Proyecto OpenWrt
Escrito en Lua
Familia de sistema operativo Unix-como
Estado de trabajo Corriente
Modelo de la fuente Código abierto
Versión inicial Enero de 2004)2004-01)
Última versión de 15.05.1)Caos más tranquilo) (16 de marzo, 2016; hace 4 meses)2016-03-16)) [±][1]
Muestras de las últimas 15.05-rc3 caos calmado (15 2015 de julio de; hace 12 meses)2015-07-15)) [±][2]
Disponible en 22 idiomas[3]
Método de actualización OPKG
Gestor de paquetes OPKG
Plataformas 50 diferentes plataformas usando las siguientes Conjuntos de instrucciones: AVR32, BRAZO, CRIS, m68k, MIPS, PowerPC, SPARC, SuperH, Ubicom32, x86, x86-64[4]
Núcleo tipo Monolítico (Linux)
Entorno de usuario BusyBox, GNU
Por defecto interfaz de usuario CLI, WebUIs
Licencia de Software libre (GPL y otras licencias)
Sitio web oficial www.openwrt.org

OpenWrt es un sistema operativo integrado basado en la Kernel de Linux, principalmente se utiliza en dispositivos integrados Para Ruta tráfico de red. Los componentes principales son el núcleo de Linux, util-linux, uClibc o MUSL,[5] y BusyBox. Todos los componentes han sido optimizados para que el tamaño, para ser lo suficientemente pequeño como para caber en el limitado almacenamiento y memoria disponible en enrutadores de inicio.

OpenWrt se configura mediante un interfaz de línea de comandos (ceniza Shell), o una interfaz web (LuCI). Hay aproximadamente 3500 opcional paquetes de software disponible para instalación a través de la OPKG sistema de gestión de paquetes.

OpenWrt puede ejecutarse en varios tipos de dispositivos, incluyendo CPE routers, pasarelas residenciales, teléfonos inteligentes, computadoras de bolsillo (p. ej. Ben NanoNote), y ordenadores portátiles. También es posible ejecutar OpenWrt ordenadores personales, que comúnmente se basan en la x86 arquitectura.

Contenido

  • 1 Historia
    • 1.1 Comunicados de
    • 1.2 Incompatibilidad de hardware
  • 2 Características
    • 2.1 Interfaz web
  • 3 Desarrollo
  • 4 Adopción
    • 4.1 Derivados
  • 5 Referencias
  • 6 Acoplamientos externos

Historia

El proyecto surgió porque Linksys construido el firmware para su Serie de WRT54G de routers inalámbricos de código disponible al público bajo licenciada de la GPL.[6] Bajo los términos de esa licencia, Linksys estaba obligado a hacer disponible bajo la misma licencia el código fuente de su versión modificada[7][8] que permitió a su vez los desarrolladores independientes a crear versiones derivadas adicionales. Apoyo fue limitado originalmente a la serie de WRT54G, pero desde entonces se ha ampliado para incluir muchos otros chipsets, fabricantes y tipos de dispositivos, incluyendo Equipos de enchufe y Openmoko teléfonos móviles.

Utilizando este código como base y luego como una referencia, los desarrolladores crearon un Distribución de Linux ofrece muchas características que no se habían encontrados en enrutadores de nivel de consumidor. Algunas de las características anteriormente requieren software propietario. Antes de la introducción de OpenWrt 8.09, usando Linux 2.6.25 y el B43 módulo del núcleo, WLAN para muchos Broadcom-basada en routers sólo estaba disponible a través de la propiedad WL.o módulo que también se prestó para la versión del núcleo Linux 2.4. x solamente.

Los nombres de código de ramas de OpenWrt se nombran después de bebidas alcohólicas, generalmente incluyendo sus recetas en la MOTD así, cf. Ruso blanco, Kamikaze, Petardeo, Ajuste de actitud, Interruptor de barrera.

El tronco de desarrollo de borde sangrado confusamente también fue llamado Kamikaze hasta febrero de 2011 pero con r25514 fue retitulado como "Ajuste de actitud" y ahora se cambia constantemente al siguiente nombre estable.

Comunicados de

Con la etiqueta Nombre del código de Versión Fecha de lanzamiento Kernel de Linux Biblioteca estándar de C Paquetes binarios Paquetes fuente Notas
(por defecto) (disponible)
N / A Versión antigua, que ya no se admite: pre Buildroot-NG 0.x N / A N / A uClibc 474 ≈ 310
r6268 Versión antigua, que ya no se admite: Ruso blanco 0,9 Enero de 2006 2.4.30 uClibc ≈ 360 ≈ 140 Basada en la NVRAM NAS, wl. Plataforma soportada: 2.4 BRCM.
r7428 Versión antigua, que ya no se admite: Kamikaze 7.06 Junio de 2007 2.6.19 uClibc ≈ 750 ≈ 450 Utilizando OPKG. Plataformas soportadas: Atheros-2.6, AU1000-2.6, 2.4 BRCM, brcm47xx-2.6, IXP4xx-2.6, imagicbox-2.6, rb532-2.6 y x86-2.6.
r7832 Versión antigua, que ya no se admite: Kamikaze 7.07 Julio de 2007 2.6.21 uClibc ≈ 790 ≈ 475 Nueva plataforma: AMCC-2.6.
r8679 Versión antigua, que ya no se admite: Kamikaze 7.09 Septiembre de 2007 2.6.21 uClibc ≈ 630 ≈ 500
r14547 Versión antigua, que ya no se admite: Kamikaze 8.09 Septiembre de 2008 2.6.26 uClibc ≈ 1.400 ≈ 875 Nueva plataforma: ar71xx.
r16279 Versión antigua, que ya no se admite: Kamikaze 8.09.1 De junio de 2009 2.6.26 uClibc ≈ 1.400 ≈ 875
r18961 Versión antigua, que ya no se admite: Kamikaze 8.09.2 10 de enero de 2010[9] 2.6.26 uClibc ≈ 1.400 ≈ 875
r20742 Versión antigua, que ya no se admite: Petardeo 10.03 07 de abril de 2010[10] 2.6.32 uClibc ≈ 2.350 ≈ 1.050 Plataformas soportadas: adm5120_mips, adm5120_mipsel, ar7, ar71xx, Atheros, AU1000, AVR32, 2.4 BRCM, brcm47xx, brcm63xx, cobalto, ep80579, ifxmips, IXP4xx, Kirkwood, OCTEON, Orion, ppc40x, ppc44x, rb532, RDC, x86 y xburst.
r29594 Versión antigua, que ya no se admite: Petardeo 10.03.1 21 de diciembre de 2011[11] 2.6.32 uClibc eglibc
glibc
≈ 2.950 ≈ 1.175
r36088 Versión antigua, que ya no se admite: Ajuste de actitud 12.09 25 de abril de 2013[12] 3.3 uClibc eglibc ≈ 3.450 ≈ 1.150 Código (Planificador de red) portado desde Linux 3.5 a 3.3. Nuevas plataformas: ramips, bcm2708 (Frambuesa Pi) y otros.
r42625 Versión antigua, que ya no se admite: Interruptor de barrera 14.07 02 de octubre de 2014[13] 3.10.49[14] uClibc MUSL
eglibc
? ? Nuevas plataformas: i.MX23, i.MX6[15] y mvebu.
r46767 Versión antigua, que ya no se admite: Caos más tranquilo 15.05 11 de septiembre de 2015[16] 3.18.20[17] uClibc MUSL
glibc[18]
? ? nftables (disponible desde Linux kernel 3.12); Nuevas plataformas: TBA si cualquier
Versión estable actual: Caos más tranquilo 15.05.1 16 de marzo de 2016[19] 3.18.23
tronco Futuras versiones: Conductor designado[20] desarrollo N / A ≥4.1 MUSL[21] uClibc
glibc
? ?
Leyenda:
Versión antigua
Versión anterior, aún
Última versión
Última versión de vista previa
Versión futura

Incompatibilidad de hardware

Con el lanzamiento de ajuste de actitud (12.09) de OpenWrt, ya no se admiten todos los dispositivos de hardware con 16 MB o menos memoria RAM ya que pueden quedarse sin memoria fácilmente. Mayor petardeo (10.03) recomienda en su lugar para bcm47xx dispositivos, como temas para los dispositivos vinieron caigan ayuda para el destino legado de Broadcom 2.4 BRCM.[22][23]

Características

OpenWrt sigue el Bazar-filosofía y se caracteriza por una abundancia de opciones. Las características incluyen:

  • Una escritura sistema de archivos root, permitiendo a los usuarios agregar, quitar o modificar cualquier archivo. Esto se logra mediante el uso de overlayfs[24] a superposición de[25] un sólo comprimido SquashFS sistema de archivos con una escritura JFFS2 archivo de sistema en un Copy-on-write moda. JFFS2 es compatible con flash nivelación de desgaste.
  • El administrador de paquetes OPKG, similar a dpkg, permite a los usuarios instalar y quitar software. El repositorio contiene paquetes de cerca de 3500. Esto contrasta con los firmwares basados en Linux basados en sistemas de archivo de sólo lectura sin la posibilidad de modificar el software instalado sin reconstrucción y destella una imagen de firmware completo.
  • Un conjunto de scripts llamado UCI (interfaz de configuración unificada) pretende unificar y simplificar la configuración de todo el sistema[26]
  • Configuración extensible de los controladores de hardware entero, por ejemplo, incorporados conmutadores de red y su VLAN-las capacidades, WNICs, Módems DSL, FX, botones de hardware disponibles, etc..
  • Exhaustivos posibilidades para configurar red-relacionadas con las características, como:
    • Soporte de IPv4.
    • IPv6 pila de nativo:
      • Prefijo de número de manipulación,
      • Nativo IPv6 configuración (SLAAC, apátrida DHCPv6, con estado DHCPv6DHCPv6-PD),
      • IPv6 tecnologías de transición (6rd, 6to4, 6 en 4, ds lite, lw4o6, mapa-e),
      • Posterior configuración de IPv6 (Router Advertisement, DHCPv6 (stateless and stateful) y DHCPv6-PD).
    • Enrutamiento de a través de iproute2, Quagga, PÁJARO, Babel etc.
    • Redes de malla a través de B.A.T.M.A.N., OLSR y IEEE 802. 11S-capacidades de la Controladores WNIC
    • Inalámbrico de funcionalidad, por ejemplo, hacer que el dispositivo actúe como un Repetidor inalámbrico, un punto de acceso inalámbrico, un puente inalámbrico, un portal cautivo, o una combinación de éstos con p. ej. ChilliSpot, Portal cautivo WiFiDog, etc..
    • Seguridad inalámbrica: Inyección de paquetes, p. ej. Airpwn, Lorcon, e.a.
    • Firewall stateful, NAT y reenvío de puertos a través de Netfilter; Además PeerGuardian está disponible
    • Puerto dinámicamente configurado protocolos de reenvío UPnP y NAT-PMP a través de upnpd, etc..
    • Golpeando el puerto través de knockd y llamo
    • TR-069 Cliente (CWMP)[27]
    • IPS a través de Snort (software)
    • Administración de colas activas (AQM) a través de la Planificador de red del kernel Linux, con muchos disponibles disciplinas de colas. Código ha sido portado a Kernel 3.3.[28] Esto encapsula Tráfico para asegurar la justa distribución de ancho de banda entre varios usuarios y Calidad de servicio (QoS) para el uso simultáneo de aplicaciones tales como VoIP, juego en línea, y medios de transmisión sin experimentar los impactos negativos de la saturación del enlace.
    • Equilibrio de carga para uso con múltiples Proveedores de Internet utilizando enrutamiento de fuente específica
    • IP tunneling (GRE, OpenVPN, pseudowire, etc..)
    • Extensible en tiempo real monitoreo de red y estadísticas a través de por ejemplo RRDtool, Estancada, Nagios, Munin lite, Zabbix, etc..
    • Sistema de nombres de dominio (DNS) y DHCP a través de Dnsmasq, MaraDNS, etc..
    • DNS dinámico servicios para mantener un dominio fijo nombre con un ISP no proporciona una estática Dirección IP
    • Sistema de distribución inalámbrica (WDS) incluyendo WPA-PSK, WPA2-PSK, modos de encriptación WPA-PSK/WPA2-PSK Mixed-Mode
  • OpenWrt es compatible con cualquier hardware que tenga Linux soporte; dispositivos que pueden conectarse (por ejemplo, sobre USB) a un dispositivo integrado incluyen
    • Impresoras
    • Módems de banda ancha móvil
    • Webcams
    • Tarjetas de sonido
  • Paquetes de software importantes para usar el soporte de hardware son:
    • Uso compartido de archivos a través de SAMBA, (Compatible con Windows), NFS y FTP, impresora compartir a través de la servidor de impresión TAZAS (cola) o p910nd (no enrollado)
    • PulseAudio, Music Player Daemon, Audio y Video streaming a través de DLNA/Estándares UPnP AV, iTunes (DAAP) servidor
    • Asterisk (PBX)
    • Transporte de telemetría MQ a través de Mosquitto
  • Un extenso Ajax-habilitado interfaz web, gracias al proyecto de LuCI[29]
  • Regular corrección de errores y actualizaciones, incluso para dispositivos no soportados por los fabricantes

Interfaz web

Antes de su lanzamiento 8.09, OpenWrt tenía una interfaz mínima. En las versiones de OpenWrt 8.09 y más nuevas, un interfaz web más capaz está incluido.[30] Esta interfaz está basada en luces, una MVC marco, escrito en el Lua lenguaje de programación.[29]

El X-Wrt proyecto proporciona una interfaz de web alternativo, llamada webif² en los repositorios de paquetes para las versiones actuales y anteriores de OpenWrt.

El Utilidad de administración de Router de gárgola es una interfaz web de OpenWrt con un fuerte énfasis en la usabilidad. Estaba originalmente disponible como un conjunto de paquetes de OpenWrt. El autor de gárgola comenzó a hacer modificaciones en el diseño del sistema de la base de OpenWrt, se eliminó el sistema de paquetes como imágenes de firmware sólo completa ya están[¿Cuando?] disponible para su descarga. Gárgola hace uso extensivo de JavaScript descargar tanto trabajo como sea posible en el equipo cliente, y se centra en la facilidad de uso, tratando de llegar a un nivel comparable a la sensación de aparato de firmware de router comerciales.

LuCI
X-Wrt
Gárgola

Desarrollo

Medio ambiente y construir sistema de desarrollo de OpenWrt, conocido como OpenWrt Buildroot, se basan en una muy modificada Buildroot sistema. OpenWrt Buildroot es un conjunto de Makefiles y parches de automatiza el proceso de construcción de un sistema completo basado en Linux OpenWrt para un dispositivo encajado, construyendo y usando un apropiado compilación cruzada cadena de herramientas.[31][32]

Dispositivos embebidos generalmente utilizan un procesador diferente a la encontrada en los equipos de host utilizados para la construcción de sus imágenes de sistema de OpenWrt, que requieren una cadena de herramientas de compilación cruzada. Tales herramientas de compilación se ejecuta en un sistema anfitrión, pero genera código para un dispositivo encajado específico y su procesador arquitectura de conjunto de instrucciones (ISA). Por ejemplo, si utiliza un sistema de host x86 y utiliza un sistema de destino MIPS32, la cadena de herramientas de compilación regular del anfitrión se ejecuta en x86 y genera código para x86 arquitectura, mientras que la cadena de herramientas de compilación cruzada funciona en x86 y genera código para la arquitectura MIPS32. OpenWrt Buildroot automatiza todo este proceso para trabajar en la instrucción sets arquitecturas de dispositivos más integrados y sistemas host.[31][33]

OpenWrt Buildroot proporciona las siguientes características:[31][33]

  • Facilita el software de puerto a través de arquitecturas
  • Utiliza kconfig (kernel de Linux menuconfig) para la configuración de todas las opciones
  • Proporciona una cadena de herramientas de compilador cruzado integrado (gcc, ld, uClibc etc..)
  • Proporciona una abstracción de autotools (automake, autoconf), CMake y SCons
  • Controla el flujo de trabajo de construcción de la imagen de OpenWrt estándar: descargando, parcheo, configuración, compilación y empaquetado
  • Preve una serie de errores comunes conocidas comportándose mal paquetes

Además de imágenes del sistema de construcción, entorno de desarrollo de OpenWrt también proporciona un mecanismo para la construcción simplificada multiplataforma de OpenWrt paquetes de software. Código fuente de cada paquete de software se requiere para proporcionar un Makefile-como conjunto de instrucciones y un conjunto opcional de parches para corrección de errores u optimizaciones de huella.[34]

Adopción

OpenWrt, especialmente su sistema de construcción Buildroot, ha adoptado muchas veces:

  • Freifunk y otras comunidades de la red de malla
  • Bufferbloat.net (Cerowrt)
  • IETF Proyectos de integración de IPv6 HIPnet y HomeNet están basado en OpenWrt

Derivados

Vea también: Lista de proyectos de firmware de router
  • LEDE nace como un spin-off del proyecto OpenWrt y comparte muchas de las mismas metas.
  • CeroWrt– con el propósito de complementar el árbol del núcleo debloat de prueba y proporcionar una plataforma para pruebas reales de bufferbloat correcciones[35][36]
  • Chilli Coova-basado en OpenWrt con énfasis en puntos de acceso inalámbricos, un fork del chillifire con enfoque en la gestión del punto de acceso inalámbrico
  • Gárgola-una interfaz web de OpenWrt con un fuerte énfasis en la usabilidad que más adelante se bifurcaba en una distribución separada
  • Flukso – nodos de sensores inalámbricos con un chipset Atheros AR2317 ejecuta un OpenWrt parcheado para la comunicación. Fuentes y esquemas de hardware disponible en GitHub.
  • FONrouters inalámbricos-basado en OpenWrt actuando como puntos calientes. Fuentes y herramientas disponibles en fonosfera.org
  • Linino – distribución basado en OpenWrt para el MIPS-base Arduino Yùn: Proyecto de GitHub
  • Midge Linux – una distribución basado en OpenWrt para dispositivos basados en Infineon Technologies ADM-5120 SoCs, como la Edimax BR - 6104 K y BR-6104KP.
  • OpenSAN – iSCSI blanco Red de área de almacenamiento realización.
  • PacketProtector – distribución de seguridad basado en OpenWrt que incluye IDS, IPS, VPNy las capacidades de antivirus. Los paquetes incluyen Snort Snort-inline, FreeRADIUS, OpenVPN, DansGuardian y ClamAV. Estas herramientas son accesibles a través de la vieja interfaz de administración web GUI de OpenWrt, denominado X-Wrt webif ^ 2. Proyecto terminado en 07 de junio de 2012.[37]
  • El Turris Omnia router se ejecuta en un derivado de OpenWrt
  • Diversas base proyectos de redes inalámbricas comunitarias, incluyendo Freifunk, Malla Libre y qMp
  • libreCMC– distribución basado en OpenWrt sin software no libre o blobs binarios, avalados por la Free Software Foundation[38]

Referencias

  1. ^ "Caos 15.05.1 más tranquilo". 16 de marzo de 2016. 21 de marzo 2016. 
  2. ^ "Caos calmado 15.05-rc3". Foro de OpenWrt. 13 de junio de 2015. 13 de junio 2015. 
  3. ^ "Portal de traducción de LuCI". 2004-09-01. 2010-12-31. 
  4. ^ "Config.in en tronco y destino – OpenWrt". Dev.OpenWrt.org. 22 / 11 / 2013. 13 / 02 / 2014. 
  5. ^ Fietkau, Felix (16 de junio de 2015). "Interruptores de OpenWrt para musl por defecto". 16 de junio 2015. 
  6. ^ Linksys WRT54G y la GPL en lkml (7 2003 de Jun)
  7. ^ La historia del WRT54G de código abierto Por Aaron Weiss (08 de noviembre de 2005)
  8. ^ Linksys lanza C├│digo para WRT54G en Slashdot (Julio de 2003)
  9. ^ "Notas de la versión Kamikaze 8.09.2". OpenWRT.org. 2010-01-10. 2013-04-26. 
  10. ^ "Notas de petardeo 10.03". OpenWRT.org. 2010-04-07. 2013-04-26. 
  11. ^ "Notas de petardeo 10.03.1". OpenWRT.org. 2011-12-21. 2013-04-26. 
  12. ^ "Notas de ajuste de actitud 12.09". OpenWRT.org. 2013-04-25. 2013-04-26. 
  13. ^ "OpenWrt BarrierBreaker 14.07". OpenWRT.org. De octubre de 2014. 
  14. ^ "kernel: actualización a 3.10.49 – OpenWrt". dev.openwrt.org. 2014-07-20. 
  15. ^ Freescale i.MX apoyo
  16. ^ "Caos de OpenWrt 15,05 más tranquilo". OpenWRT.org. De septiembre de 2015. 
  17. ^ «[OpenWrt-Devel] caos calmado 15.05-rc3». 2015-07-16. 
  18. ^ "Toolchain [OpenWrt-Devel] [PATCH 1/2]: el glorioso retorno de glibc, ver 2.21". 2015-03-11. 
  19. ^ "Caos 15.05.1 más tranquilo". 16 de marzo de 2016. 21 de marzo 2016. 
  20. ^ "conjunto de cambios 46846: cambiar banner a liberación de conductor designado". 2015-09-11. 
  21. ^ "OpenWrt [OpenWrt-Devel] cambia a musl por defecto". 2015-06-16. 
  22. ^ "Notas para el ajuste de actitud (12.09 final)". OpenWRT.org. 2013-04-25. 26 / 09 / 2013. 
  23. ^ "OpenWrt: tabla de Hardware". OpenWRT.org. 26 / 09 / 2013. 
  24. ^ "Debate overlayfs". 15 de junio de 2011. 
  25. ^ "Esquema de particionamiento de OpenWrt". 
  26. ^ "OpenWrt unificado interfaz de configuración". 
  27. ^ freecwmp es un cliente CWMP para OpenWrt
  28. ^ "Conjunto de cambios 31756-OpenWrt". Dev.OpenWrt.org. 2012-05-16. 13 / 02 / 2014. 
  29. ^ a b "proyecto LuCI". 28 de febrero, 2009. 
  30. ^ "Notas de la versión de OpenWrt 8.09". 23 de febrero, 2009. 
  31. ^ a b c "OpenWrt Buildroot – sobre". OpenWRT.org. 21 / 10 / 2013. 
  32. ^ "OpenWrt Buildroot - uso y documentación". OpenWRT.org. 2006-01-08. 21 / 10 / 2013. 
  33. ^ a b Tao Jin (2012-02-13). "Guía de desarrollo de OpenWrt" (PDF). Laboratorio de redes inalámbricas, CCI, NEU. 21 / 10 / 2013. 
  34. ^ "Creación de paquetes". OpenWRT.org. 21 / 10 / 2013. 
  35. ^ "CeroWrt Wiki". 2015-09-16. 
  36. ^ "anunciar: árbol de git del núcleo debloat-prueba". LWN.net. 13 / 02 / 2014. 
  37. ^ ""tiempo de cierre"mensaje del autor en el foro PacketProtector". 
  38. ^ «Free Software Foundation agrega libreCMC a su lista de distribución aprobado». FSF.org. 2014-09-04. 21 / 12 / 2014. 

Acoplamientos externos

  • Sitio web oficial
  • Proyecto de LuCI
  • Centro de código GPL en productos de Cisco (antiguamente Linksys) Inicio

Otras Páginas

Obtenido de"https://en.copro.org/w/index.php?title=openwrt&oldid=734628287"