Dimensione: 5094
Commento: converted to 1.6 markup
|
← Versione 58 del 2015-01-09 15:57:23 ⇥
Dimensione: 4773
Commento: Aggiunta guida compilazione OpenWrt per neofiti
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
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 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 144: | 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 147: | Linea 58: |
$ make world | $ make |
Linea 150: | Linea 61: |
=== documentazione === | 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 === documentazione: ovvero link disordinati === |
Linea 152: | Linea 122: |
* http://wiki.openwrt.org/BuildingPackagesHowTo * http://wiki.openwrt.org/BuildRoot |
* http://wiki.openwrt.org/doc/devel/packages * http://wiki.openwrt.org/doc/howto/buildroot |
Linea 155: | Linea 125: |
* [[http://wiki.prplfoundation.org/wiki/Building_prplwrt|Building OpenWrt]] @ prlpWrt Wiki | |
Linea 156: | Linea 127: |
* http://wiki.openwrt.org/OpenWrtDocs/BuildingKamikazeHowTo <<Icon(new)>> | |
Linea 159: | Linea 129: |
* init.d Start Stop script di OpenWRT: https://forum.openwrt.org/viewtopic.php?id=11301 |
Firmware Ninux
Indice
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
documentazione: ovvero link disordinati
http://forum.openwrt.org/viewtopic.php?pid=31794 (anche se un po' datata)
Building OpenWrt @ prlpWrt Wiki
http://www.oesf.org/index.php?title=Pdaxrom:_Create_An_Ipk_Howto
http://downloads.openwrt.org/docs/buildroot-documentation.html
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