OpenWRT WIFI Channel 12 und 13

Wenn iw list in der Konsole von OpenWRT

                        ...
                        * 2467 MHz [12] (disabled)
                        * 2472 MHz [13] (disabled)
                        * 2484 MHz [14] (disabled)
                        ...

zurück liefert, gibt es dank ~jow einen Binary patch für OpenWRT.

Finden kann man den Patch in seinem Userdir http://luci.subsignal.org/~jow/reghack/old/.

Für den Fall das jow’s Seite einmal offline geht, gibt es hier eine Kopie der Dateien in einem 7z-Archiv.

Gefunden habe ich den Link im Bugtracker von Openwrt.org

Ausgabe während des Patchens auf meinem TP-Link TL-WR1043ND,

 cd /tmp/
root@OpenWrt:/tmp# wget http://luci.subsignal.org/~jow/reghack/reghack.mips.elf
Connecting to luci.subsignal.org (188.40.166.7:80)
reghack.mips.elf     100% |*******************************| 46156   0:00:00 ETA
root@OpenWrt:/tmp# chmod +x reghack.mips.elf
root@OpenWrt:/tmp# ./reghack.mips.elf /lib/modules/*/ath.ko
mmap(): Invalid argument
Memory mapping failed (missing fs support?), retrying from tmpfs
Patching @ 0x000002f0: ath_is_radar_freq() MIPS opcode in ath/regd.o
Patching @ 0x000003fc: ath_is_radar_freq() MIPS opcode in ath/regd.o
Patching @ 0x0000342c: ath world regdomain with 5 rules in ath/regd.o
Patching @ 0x000034cc: ath world regdomain with 4 rules in ath/regd.o
Patching @ 0x00003550: ath world regdomain with 4 rules in ath/regd.o
Patching @ 0x000035d4: ath world regdomain with 5 rules in ath/regd.o
root@OpenWrt:/tmp# ./reghack.mips.elf /lib/modules/*/cfg80211.koreboot
stat(): No such file or directory
root@OpenWrt:/tmp# ./reghack.mips.elf /lib/modules/*/cfg80211.ko
mmap(): Invalid argument
Memory mapping failed (missing fs support?), retrying from tmpfs
Patching @ 0x0002589c: core world6 regdomain in cfg80211/reg.o
Patching @ 0x000267ac: embedded US regdomain in cfg80211/regdb.o
Patching @ 0x0002ae30: embedded 00 regdomain in cfg80211/regdb.o

Ergebnis des Patchens:

                        * 2467 MHz [12] (30.0 dBm)
                        * 2472 MHz [13] (30.0 dBm)
                        * 2484 MHz [14] (disabled)

Wie man sieht habe ich die Binaries genutzt, der Aufwand die Module selbst zu bauen wäre mir zu groß. Danke an ~jow.

UPDATE:
OpenWRT Chaos Calmer 15.05-rc1 wurde veröffentlicht. Das OpenWRT Team hat sich dazu entschieden das ganze zu fixen. Sie haben wohl die letzten Jahre auf einen Fix vom Hersteller gewartet, da weiterhin nichts kommt und es immer mehr Bug reports werden, kann man nun die eingestellte eeprom Zone per

# iw reg get
country 00: DFS-UNSET
        (2402 - 2472 @ 40), (N/A, 20), (N/A)
        (2457 - 2482 @ 40), (N/A, 20), (N/A), PASSIVE-SCAN
        (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN
        (5170 - 5250 @ 80), (N/A, 20), (N/A)
        (5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
        (5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
        (5735 - 5835 @ 80), (N/A, 20), (N/A), PASSIVE-SCAN
        (57240 - 63720 @ 2160), (N/A, 0), (N/A)

abfragen und über set, also

# iw reg set DE
# iw reg get
country DE: DFS-ETSI
        (2400 - 2483 @ 40), (N/A, 20), (N/A)
        (5150 - 5250 @ 80), (N/A, 20), (N/A), NO-OUTDOOR
        (5250 - 5350 @ 80), (N/A, 20), (0 ms), NO-OUTDOOR, DFS
        (5470 - 5725 @ 160), (N/A, 27), (0 ms), DFS
        (57000 - 66000 @ 2160), (N/A, 40), (N/A)

über die shell lösen.

OpenGL auf X

Merke: Ohne diese Pakete gibts kein direct rendering für meine Radeon HD8550D.

apt-get install libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa libosmesa6 libwayland-egl1-mesa mesa-utils mesa-utils-extra mesa-vdpau-drivers libvdpau-va-gl1 libxcb-dri2-0 libxcb-dri3-0 libxcb-xf86dri0 vdpau-va-driver xserver-xorg-video-fbdev xserver-xorg-video-radeon xserver-xorg-video-modesetting

aiccu von sixx.net auf openwrt

Merke: OpenWRT bringt für das aiccu kein init.d script mehr mit. Dashier ist das alte.

#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=51
 
config_cb() {
	local cfg_type="$1"
	local cfg_name="$2"
 
	case "$cfg_type" in
		aiccu)
			append cfgs_sections "$cfg_name" "$N"
		;;
	esac
}
 
start() {
	config_load aiccu
	for cfgs_section in $cfgs_sections; do
		config_get username $cfgs_section username
		config_get password $cfgs_section password
		config_get server $cfgs_section server
		config_get protocol $cfgs_section protocol
		config_get interface $cfgs_section interface
		config_get tunnel_id $cfgs_section tunnel_id
		config_get_bool requiretls $cfgs_section requiretls 0
		config_get_bool defaultroute $cfgs_section defaultroute 1
		config_get_bool nat $cfgs_section nat 1
		config_get_bool heartbeat $cfgs_section heartbeat 1
		mkdir -p /tmp/run
		echo "username $username" > /tmp/run/aiccu-${cfgs_section}.conf
		echo "password $password" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ -n "$server" ] && echo "server $server" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ -n "$protocol" ] && echo "protocol $protocol" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ -n "$interface" ] && echo "ipv6_interface $interface" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ -n "$tunnel_id" ] && echo "tunnel_id $tunnel_id" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ "$requiretls" = "1" ] && echo "requiretls true" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ "$defaultroute" != "1" ] && echo "defaultroute false" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ "$nat" = "1" ] && echo "behindnat true" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ "$heartbeat" != "1" ] && echo "makebeats false" >> /tmp/run/aiccu-${cfgs_section}.conf
		echo 'daemonize true' >> /tmp/run/aiccu-${cfgs_section}.conf
		echo "pidfile /var/run/aiccu-${cfgs_section}.pid" >> /tmp/run/aiccu-${cfgs_section}.conf
		[ ! -z "`ip -6 route show default | grep br-lan`" ] && \
		ip -6 route del default dev br-lan
		aiccu start /tmp/run/aiccu-$cfgs_section.conf
	done
}
 
stop() {
	config_load aiccu
	for cfgs_section in $cfgs_sections; do
		aiccu stop /tmp/run/aiccu-$cfgs_section.conf
	done
}

IP Dual-Stack IPv4 bevorzugen

So gehts,

die Datei /etc/gai.conf steuert die Priorisierung von getaddrinfo. Auf OpenWRT exisitiert diese Datei nicht und muss angelegt werden.

Entfernt man das Kommentarzeichen vor precedence ::ffff:0:0/96 100 wird IPv4 bevorzugt. ::ffff:0:0/96 ist der Adressraum der IPv4 Adressen im IPv6 Format. Testen kann man das ganze beim IPv6 Test von KabelBW.
Hier die Debian /etc/gai.conf

# Configuration for getaddrinfo(3).
#
# So far only configuration for the destination address sorting is needed.
# RFC 3484 governs the sorting.  But the RFC also says that system
# administrators should be able to overwrite the defaults.  This can be
# achieved here.
#
# All lines have an initial identifier specifying the option followed by
# up to two values.  Information specified in this file replaces the
# default information.  Complete absence of data of one kind causes the
# appropriate default information to be used.  The supported commands include:
#
# reload  <yes|no>
#    If set to yes, each getaddrinfo(3) call will check whether this file
#    changed and if necessary reload.  This option should not really be
#    used.  There are possible runtime problems.  The default is no.
#
# label   <mask>   <value>
#    Add another rule to the RFC 3484 label table.  See section 2.1 in
#    RFC 3484.  The default is:
#
#label ::1/128       0
#label ::/0          1
#label 2002::/16     2
#label ::/96         3
#label ::ffff:0:0/96 4
#label fec0::/10     5
#label fc00::/7      6
#label 2001:0::/32   7
#
#    This default differs from the tables given in RFC 3484 by handling
#    (now obsolete) site-local IPv6 addresses and Unique Local Addresses.
#    The reason for this difference is that these addresses are never
#    NATed while IPv4 site-local addresses most probably are.  Given
#    the precedence of IPv6 over IPv4 (see below) on machines having only
#    site-local IPv4 and IPv6 addresses a lookup for a global address would
#    see the IPv6 be preferred.  The result is a long delay because the
#    site-local IPv6 addresses cannot be used while the IPv4 address is
#    (at least for the foreseeable future) NATed.  We also treat Teredo
#    tunnels special.
#
# precedence  <mask>   <value>
#    Add another rule to the RFC 3484 precedence table.  See section 2.1
#    and 10.3 in RFC 3484.  The default is:
#
#precedence  ::1/128       50
#precedence  ::/0          40
#precedence  2002::/16     30
#precedence ::/96          20
#precedence ::ffff:0:0/96  10
#
#    For sites which prefer IPv4 connections change the last line to
#
precedence ::ffff:0:0/96  100
 
#
# scopev4  <mask>  <value>
#    Add another rule to the RFC 6724 scope table for IPv4 addresses.
#    By default the scope IDs described in section 3.2 in RFC 6724 are
#    used.  Changing these defaults should hardly ever be necessary.
#    The defaults are equivalent to:
#
#scopev4 ::ffff:169.254.0.0/112  2
#scopev4 ::ffff:127.0.0.0/104    2
#scopev4 ::ffff:0.0.0.0/96       14

IPv6 bei sourceforge.net

Nur wenige Mirror von sourceforge.net unterstützen derzeit IPv6. Wer also einen nativen IPv6 Zugang hat, dürfte schnell aufgeschmissen sein.

Der netcologne Mirror unterstützt IPv6.

wget -6 http://netcologne.dl.sourceforge.net/project/*Projektname*/*Titel*/*Verzeichnis*/Dateiname-1.0.0.tar.gz
1 2 3 9