Italiano English
Modifica History Actions

Differenze per "FirmwareNinux"

Differenze tra le versioni 33 e 58 (in 25 versioni)
Versione 33 del 2008-01-25 15:53:13
Dimensione: 4857
Autore: ZioPRoTo
Commento:
Versione 58 del 2015-01-09 15:57:23
Dimensione: 4773
Autore: Stefanauss
Commento: Aggiunta guida compilazione OpenWrt per neofiti
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 3: Linea 3:
[[TableOfContents]] <<TableOfContents>>
Linea 7: Linea 7:
Firmware OpenWrt con configurazione e grafica personalizzate ninux.org Firmware OpenWrt con configurazione e grafica personalizzate ninux.org-
E' in corso d'opera anche la realizazione di un firmware "next generation" [[FirmwareNG]].
Linea 10: Linea 11:
 * olsrd + plugins  * olsrd + plugins and mdns plugin !
Linea 22: Linea 23:
[[Gallery]] <<Gallery>>
Linea 29: Linea 30:
 * cambiate l'IP dell'interfaccia wireless locale (sta in {{{/etc/init.d/custom-ninux-startup}}})
Linea 31: Linea 31:
 * cambiate {{{/etc/dnsmasq.conf}}} opportunamente
 * cambiate HNA di olsr opportunamente in {{{/etc/olsrd.conf}}}
 * cambiate HNA di olsr opportunamente in {{{/etc/config/olsrd}}}

Oppure le stesse modifiche fatele tutte da interfaccia grafica
Linea 36: Linea 37:


== download ==

=== atheros (La Fonera) ===

Versione '''8.01''' per '''Fonera'''

 * https://svn.ninux.org/svn/ninuxdeveloping/ninux-ipkg-atheros/tags/8.01-bin/AtherosBinariesNinuxIpkg-TAG-8.01.tar.bz2
 
Versione '''UNSTABLE'''

 * http://students-playground.netgroup.uniroma2.it/~saverio/openwrt/fonera/
 
=== brcm (Linksys WRT54G) ===

Versione '''8.01''' per '''Linksys WRT54G/GL/GS'''

 * https://svn.ninux.org/svn/ninuxdeveloping/ninux-ipkg-brcm/tags/8.01-bin
 * http://students-playground.netgroup.uniroma2.it/~saverio/openwrt/brcm/

=== x86 (Alix) ===

Versione '''8.01''' testata su
 * '''qemu''' (vedi OpenWrtOnQemu)
 * '''alix''' (vedi AlixOpenWrt)

immagine da flashare su cf compresa di pacchetto ninux-ipkg-x86:

 * https://svn.ninux.org/svn/ninuxdeveloping/ninux-ipkg-x86/tags/8.01-bin/
 * Builds di Nino: http://test.ninux.org/~nino/openwrt/x86/openwrt-x86-ext2.image

Versione '''UNSTABLE'''

 * Builds di Saverio: http://students-playground.netgroup.uniroma2.it/~saverio/openwrt/x86/

/!\ Se utilizzate '''alix''', al '''primo boot''' modificare la password '''via telnet''': /!\ (vedi [https://svn.ninux.org/ninuxdeveloping/ticket/46 ticket 46])
{{{
$ telnet 192.168.1.1
openwrt$ passwd
openwrt$ exit
$ ssh -l root 192.168.1.1
openwrt$ exit
}}}

 1. '''Bisogna''' entrare in ssh dopo aver cambiato la password
 1. '''Non''' cambiare la password dalla console seriale
 1. '''Non''' cambiare la password dalla webif

Altrimenti la webif non partirà oppure verrà chiesta di nuovo la password.


=== adm5120 (microtik rb133) ===

Versione '''0.1-alpha''' testata su piattaforma mikrotik rb133c

'''Immagini compilate:'''

'''RAMDISK''' (serve per fare il boot da rete nella prima parte dell'installazione):

http://test.ninux.org/~nino/openwrt/adm5120/openwrt-adm5120-2.6-vmlinux.elf

'''Da scrivere nella NAND:'''

Rootfs:

http://test.ninux.org/~nino/openwrt/adm5120/openwrt-adm5120-2.6-rootfs.tgz

Kernel:

http://test.ninux.org/~nino/openwrt/adm5120/openwrt-adm5120-rb1xx-kernel

Istruzioni:
http://wiki.openwrt.org/OpenWrtDocs/Hardware/Mikrotik/RB100


=== Tema grafico per webif^2 ===

Versione '''8.01''' Platform-independent

attachment:ninux-webiftheme_8.01-2_all.ipk
Linea 123: Linea 43:

=== sorgenti ===

{{{https://svn.ninux.org/ninuxdeveloping/svn/openwrt-meta}}} - meta repository con vari externals:
 * {{{https://svn.openwrt.org/openwrt/trunk}}} --> {{{trunk}}} - il ramo di sviluppo principale di OpenWrt
 * {{{https://svn.ninux.org/ninuxdeveloping/svn/ninux-ipkg-brcm}}} --> {{{trunk/packages/zzz-ninux-ipkg-brcm}}} - meta-ipkg per broadcom con files di configurazione e dipendenza da altri pacchetti (es. olsrd)
 * {{{https://svn.ninux.org/ninuxdeveloping/svn/ninux-ipkg-atheros}}} --> {{{trunk/packages/zzz-ninux-ipkg-atheros}}} - meta-ipkg per atheros (fonera)
 * ...
Linea 135: Linea 46:
$ svn co http://svn.ninux.org/svn/ninuxdeveloping/openwrt-meta
$ cd openwrt-meta/trunk
$ svn co svn://svn.openwrt.org/openwrt/branches/backfire openwrt-backfire
$ cd openwrt
$ echo "src-svn zzzninux https://svn.ninux.org/svn/ninuxdeveloping/packages" >> feeds.conf.default
Linea 139: Linea 51:
$ ./scripts/feeds install -a -p xwrt
Linea 145: Linea 56:
 * [https://svn.ninux.org/ninuxdeveloping/ticket/25 ticket #25]: '''NON ABILITARE''' Base system -> busybox -> Configuration -> Networking Utilities -> Use sendfile system call (sotto httpd)
Linea 148: Linea 58:
$ make world $ make
Linea 151: Linea 61:
Note: To build an full openwrt with all packages, ignoring the failing packages, add a {{{IGNORE_ERRORS=m}}} to the make call.
This will let continiue the build, even if a single packed marked with “m” failed to build.
Linea 152: Linea 64:
{{{
$ make IGNORE_ERRORS=m
}}}
Linea 153: Linea 68:
=== documentazione ===
 * ["OpenWRTCompile"]
 * http://wiki.openwrt.org/BuildingPackagesHowTo
 * http://wiki.openwrt.org/BuildRoot
Per compilare solo un pacchetto basta andare nella directory principale, fare un
{{{
make menuconfig
}}}

e selezionare solo il pacchetto da compilare (selezionarlo come Modulo).

Per compilare il pacchetto poi basta lanciare (sempre dalla directory principale) il comando

{{{
make package/NOMEPACCHETTO-compile
}}}

=== How to Add a Netfilter Extension to the firmware ===

Some Netfilter Extension are not in the OpenWRT toolchain.

To add nome edit the file {{{include/netfilter.mk}}}

andare alla sezione {{{#extra}}}

Qui c'è una riga per ogni estensione di Netfilter che viene caricata nel firmware quando si seleziona il modulo kmod-netfilter-extra

In questo esempio abbiamo aggiunto il modulo di iptables {{{hashlimit}}}, abbiamo quindi aggiunto questa riga:
{{{
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT, $(P_XT)xt_hashlimit))
}}}

Dove {{{CONFIG_NETFILTER_XT_MATCH_HASHLIMIT}}} è il simbolo del modulo del kernel che vogliamo aggiungere. Per trovarlo prendete i sorgenti di un Vanilla Kernel, andate nei menu con {{{make menuconfig}}} e quando il modulo che vi interessa è selezionato selezionate {{{help}}} e troverete una dicitura tipo {{{Symbol: NETFILTER_XT_MATCH_HASHLIMIT}}}

Per trovare cosa scrivere dove mettiamo {{{xt_hashlimit}}} dovete compilare il vostro vanilla kernel, poi andiamo in {{{net/netfilter}}} e vediamo come si chiama l'oggetto {{{.o}}} del modulo kernel che ci interessa, nel nostro caso il nome era {{{xt_hashlimit.o}}}

Quindi, aggiunta questa singola riga al file {{{include/netfilter.mk}}} controlliamo che vada tutto bene facendo:

{{{
make menuconfig
}}}

selezioniamo {{{iptables-mod-extra}}} che si trova dentro {{{base-system -> iptables}}}
selezioniamo {{{kmod-ipt-extra}}} che si trova dentro {{{kernel-modules -> Netfilter Extensions}}}

Fatto questo proviamo a compilare i pacchetti per vedere se va tutto liscio

{{{
make package/kernel-clean V=99
make package/kernel-compile V=99
make package/iptables-clean V=99
make package/iptables-compile V=99
}}}

se non ci sono errori possiamo compilare tutto il firmware con {{{make}}} ed il nuovo firmware avrà dentro il modulo di Netfilter che abbiamo aggiunto

=== documentazione: ovvero link disordinati ===
 * [[OpenWRTCompile]]
 * http://wiki.openwrt.org/doc/devel/packages
 * http://wiki.openwrt.org/doc/howto/buildroot
Linea 158: Linea 125:
 * [[http://wiki.prplfoundation.org/wiki/Building_prplwrt|Building OpenWrt]] @ prlpWrt Wiki
Linea 159: Linea 127:
 * http://wiki.openwrt.org/OpenWrtDocs/BuildingKamikazeHowTo [[Icon(new)]]
Linea 162: Linea 129:
 * init.d Start Stop script di OpenWRT: https://forum.openwrt.org/viewtopic.php?id=11301

== installazione da remoto ==

Try at yuor own risk!!!! (La procedura è stata testata solo su schede Alix)

E' possibile aggiornare il firmware da remoto con il seguente comando:
{{{
ssh root@(indirizzo della scheda) 'dd of=/dev/hda bs=512'< openwrt.image
}}}

Firmware Ninux

progetto

Firmware OpenWrt con configurazione e grafica personalizzate ninux.org- E' in corso d'opera anche la realizazione di un firmware "next generation" FirmwareNG.

features

  • olsrd + plugins and mdns plugin !
  • webif con grafica Ninux.org
  • Ninux Dynamic DNS
  • iproute2
  • snmp
  • horst
  • tcpdump
  • wl (solo WRT54G)
  • file di configurazione quasi-pronti

screenshots

Istruzioni generiche per tutti i routers!!!

Dopo che installate l'immagine:

  • cambiate l'IP dell'IF Ninux in /etc/config/network

  • cambiate l'IP dell'interfaccia wired /etc/config/network

  • cambiate HNA di olsr opportunamente in /etc/config/olsrd

Oppure le stesse modifiche fatele tutte da interfaccia grafica

Prendete indirizzi IP liberi ed usate questa pagina: GestioneIndirizzi

sviluppo

Vedere https://svn.ninux.org/ninuxdeveloping e SvnHowTo

compilare

$ svn co svn://svn.openwrt.org/openwrt/branches/backfire openwrt-backfire
$ cd openwrt
$ echo "src-svn zzzninux https://svn.ninux.org/svn/ninuxdeveloping/packages" >> feeds.conf.default
$ ./scripts/feeds update
$ ./scripts/feeds install -a
$ make menuconfig 

Nel menù:

  • scegliere i pacchetti ninux-* in Administration

$ make

Note: To build an full openwrt with all packages, ignoring the failing packages, add a IGNORE_ERRORS=m to the make call. This will let continiue the build, even if a single packed marked with “m” failed to build.

$ make IGNORE_ERRORS=m

Per compilare solo un pacchetto basta andare nella directory principale, fare un

make menuconfig

e selezionare solo il pacchetto da compilare (selezionarlo come Modulo).

Per compilare il pacchetto poi basta lanciare (sempre dalla directory principale) il comando

make package/NOMEPACCHETTO-compile

How to Add a Netfilter Extension to the firmware

Some Netfilter Extension are not in the OpenWRT toolchain.

To add nome edit the file include/netfilter.mk

andare alla sezione #extra

Qui c'è una riga per ogni estensione di Netfilter che viene caricata nel firmware quando si seleziona il modulo kmod-netfilter-extra

In questo esempio abbiamo aggiunto il modulo di iptables hashlimit, abbiamo quindi aggiunto questa riga:

$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT, $(P_XT)xt_hashlimit))

Dove CONFIG_NETFILTER_XT_MATCH_HASHLIMIT è il simbolo del modulo del kernel che vogliamo aggiungere. Per trovarlo prendete i sorgenti di un Vanilla Kernel, andate nei menu con make menuconfig e quando il modulo che vi interessa è selezionato selezionate help e troverete una dicitura tipo Symbol: NETFILTER_XT_MATCH_HASHLIMIT

Per trovare cosa scrivere dove mettiamo xt_hashlimit dovete compilare il vostro vanilla kernel, poi andiamo in net/netfilter e vediamo come si chiama l'oggetto .o del modulo kernel che ci interessa, nel nostro caso il nome era xt_hashlimit.o

Quindi, aggiunta questa singola riga al file include/netfilter.mk controlliamo che vada tutto bene facendo:

make menuconfig

selezioniamo iptables-mod-extra che si trova dentro base-system -> iptables selezioniamo kmod-ipt-extra che si trova dentro kernel-modules -> Netfilter Extensions

Fatto questo proviamo a compilare i pacchetti per vedere se va tutto liscio

make package/kernel-clean V=99
make package/kernel-compile V=99
make package/iptables-clean V=99
make package/iptables-compile V=99

se non ci sono errori possiamo compilare tutto il firmware con make ed il nuovo firmware avrà dentro il modulo di Netfilter che abbiamo aggiunto

installazione da remoto

Try at yuor own risk!!!! (La procedura è stata testata solo su schede Alix)

E' possibile aggiornare il firmware da remoto con il seguente comando:

ssh root@(indirizzo della scheda) 'dd of=/dev/hda bs=512'< openwrt.image