Weird encoding of sys.argv in python3
14. Únor 2018
Encoding of sys.argv (parameters given on command line) is controlled by current locale (enviroment variable LC_ALL).

To fix encoding to utf-8:

sys.argv[X] = sys.argv[X].encode(sys.stdout.encoding, 'surrogateescape').decode('utf-8')
Enable MySQL's slow query log without restarting MySQL
21. Srpen 2017
SET GLOBAL slow_query_log = 'ON';

FLUSH LOGS;

SET GLOBAL log_queries_not_using_indexes = 'ON';

...etc...

Chrome jako výchozí aplikace pro odkazy v Thunderbird
16. Červenec 2017
Preferences (Menu Edit -> Preferences)

Attachments tab

For Content Type HTTPS, HTTP -> Action Use google-chrome (or other desired browser)
OpenVPN jako náhrada za SixXS IPv6 tunel
7. Červen 2017
Návod slouží jako kraťoučný jednoduchý návod jak si zprovoznit IPv6 tunel po ukončení provozu SixXS tunelovací služby. Návod neslouží pro připojení jednotlivých počítačů, ale o zprovoznění /64 prefixu na domácím routeru, který dál přiděluje ip adresy počítačům v domácí síti.

Nejprve je potřeba mít někde server s IPv6 konektivitou s volným /64 prefixem. Např. v master.cz má každý zákazník /48, takže teoreticky může mít pak 65536 takových /64 tunelů. Defaultně přidělí /64 na jeden server, ale po domluvě mi naroutovali /56, takže jsem z toho uloupnul pro domácí tunel.

Poté je potřeba nakonfigurovat OpenVPN server, kde se nastaví pouze šifrovací klíče (nejsnadněji vygenerováné pomocí easy-rsa) a skript, který se má spustit po nastartování serveru a vytvoření virtuálního rozhraní.

Vytvořit soubor /etc/openvpn/ipv6tunnel.conf s obsahem:

duplicate-cn
multihome
mode server
tls-server
persist-key
persist-tun
dev tapvpnserver
port 1194
proto udp

; soubory s certifikáty a klíčem (vygenerovat pomocí easy-rsa)
ca /vpn/ca/keys/ca.crt
cert /vpn/ca/keys/server.crt
key /vpn/ca/keys/server.key
dh /vpn/ca/keys/dh2048.pem

; skript spusteny po nastartovani (skript vytvořit)
script-security 2
up /vpn/up.sh



Na domácím routeru je pak také potřeba nakonfigurovat OpenVPN v roli klienta. Klíče pro klienta opět ideálně vytvořit pomocí easy-rsa na serveru;

Vytvořit soubor /etc/openvpn/ipv6tunnel.conf s obsahem:

client
;jméno serveru
remote VASE-IPV4-ADRESA-SERVERU-S-VPN 1194
dev tapipv6tunnel
dev-type tap
proto udp
nobind
persist-key
ns-cert-type server

; skript spusteny po nastartovani (skript vytvořit)
script-security 2
up /vpn/up.sh

<ca>
-----BEGIN CERTIFICATE-----
.....
-----END CERTIFICATE-----
</ca>

<cert>
-----BEGIN CERTIFICATE-----
.....
-----END CERTIFICATE-----
</cert>

<key>
-----BEGIN CERTIFICATE-----
.....
-----END CERTIFICATE-----
</key>

<ca>
-----BEGIN CERTIFICATE-----
.....
-----END CERTIFICATE-----
</ca>


To by bylo vše pro vytvoření VPN. A teď jen nastavit ono IPv6 tunelování pomocí up.sh skriptů na serveru a na klientu.

Na serveru se jen nahodí rozhraní, přidá mu link local adresu, která bude sloužit pro nastavení routování a nastavení routování /64 prefixu, aby směřoval na link local adresu domácího routeru.

Vytvořit na serveru soubor /vpn/up.sh s obsahem:

ip link set tapvpnserver up

ip a a fe80::1/64 dev tapvpnserver

ip -6 route add VAS:IPV6:PREFIX::/64 via fe80::2 dev tapvpnserver



Na klientu se také jen nahodí rozhraní, přidá mu link local adresu, která bude sloužit pro nastavení routování a nastavení defaultní routy, aby směřovala na link local adresu serveru.

Vytvořit na serveru soubor /vpn/up.sh s obsahem:

ip link set tapipv6tunnel up

ip a a fe80::2/64 dev tapipv6tunnel

ip -6 route add default via fe80::1 dev tapipv6tunnel



Spojení lze otestovat přidáním IPv6 adresy na rozhraní na domácím routeru

ip -6 a a VAS:IPV6:PREFIX::2/64 dev tapipv6tunnel

ping6 nix.cz



Po otestování adresu opět odebereme
ip -6 a d VAS:IPV6:PREFIX::2/64 dev tapipv6tunnel.

Aby domácí router přiděloval počítačům v domácí síti IPv6 adresy a sloužil jako router je potřeba, aby rozesílal RA do domácí sítě. K tomu slouží utilita radvd.
Na nainstalování jí nastavíme na jakém rozhraní má pracovat a o jaký prefix se má starat. Předpokládám, že běžnou konfigurací je, že domácí router má zbridgované rozhraní, tudíz nastavíme název bridge a váš ipv6 prefix. Tomuto rozhraní ve finálé nastavíme i tu ipv6 adresu, kterou jsme v rámci testu přidělili na vpn rozhraní.

interface br-local
{
AdvSendAdvert on;

prefix VAS:IPV6:PREFIX::/64
{
};
};


ip -6 a a VAS:IPV6:PREFIX::2/64 dev br-local

Poslední věc co je potřeba udělat, aby router routoval, je povolit ipv6 forwardování.

echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

Pro trvalé uložení nastavit v souboru /etc/sysctl.conf

net.ipv6.conf.all.forwarding=1


Postřehy:
- funguje mi to touto dobou už několik dní stabilně a spolehlivě
- latence na ipv4 mám kolem 4ms. Na ipv6 po tomto tunelu 5ms. Při testování VPN po TCP, byly latence kolem 40ms, takže ideálně zvolit UDP, kde rozdíl latencí je pro domácí prostředí nerozpoznatelný
- vzhledem ke NATem a kdovíčím zbídačenému internetu mi nic kromě SixXS nešlo, ani Hurricane Electric ani 6to4, jsem velmi rád, že OpenVPN lítá jak krysa probodlá šroubovákem:-)
Linux command line (G)UI disk usage tool
22. Prosinec 2016
apt-get install ncdu

ncdu /some/path/


| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Starší články > Na konec >>

Poslední příspěvky
Weird encoding of sys.argv in python3
Enable MySQL's slow query log without restarting MySQL
Chrome jako výchozí aplikace pro odkazy v Thunderbird
OpenVPN jako náhrada za SixXS IPv6 tunel
Linux command line (G)UI disk usage tool
Linux mouse speed & acceleration
Linux console set US keyboard layout
Disable baloo baloo_file_cleaner etc...
GRUB repair
Převod ext3 na ext4
Set display brightness via command line
Compare debian packages version
Yakuake Ctrl+Shift+X shortcut
Vytvoření iso souboru
Přidání ubuntu PPA repositáře (Personal Package Archive)
Instalace oracle java z repositáře
Analýza obsazenosti disku
Zabití stromu procesu
Diakritika v názvech souborů v zipu z windows
Odstranění souborů podle určitého filtru
Výpočet autoconf ipv6 adresy z mac adresy
Použití vimdiff
Network top-like program
Preferování IPv4 před IPv6
Výpis disků a jejich UUID
Výroba síťového UTP kabelu s konektory RJ-45
Sony Vaio F11 vs ubuntu vs 802.11n
Ping rozsahu ip adres
Zjištění sériového čísla disku
Linux hotswap HDD
Logování přístupu programů na disk
Omezení rychlosti netu spuštěného programu
Výpis neplatných symlinků
Výpis programů naslouchajících na některém portu
MySQL Per-Table Tablespaces
Kopírování složek přes ssh
Synchronizace aktuálního času
Duplicitní soubory na disku
Rezervované místo na disku pro roota
Vypsání složek seřazených podle velikosti
Změna zdroje symbolických linků
Java decompiler
Buildování debian source balíčků
Vypnutí/zapnutí monitoru přes command line
Priorita přístupu procesů na disk v linuxu
Zobrazení rychlosti kopírování dd
Midnight Commander unzip problem
Interlaced video v mplayeru
Odstranění AppArmor
Network stream vs mplayer
Generování hesla pod linuxem
Vytvoření /dev/null
Vyprazdnění disk cache v linuxu
Reverzní proxy nginx -> apache se zachováním remote ip
Spouštění php skriptu v apachi pod UID skriptu
Edimax nLite EW-7711UAn vs. ubuntu (linux)
jEdit match whole word only
Pocket PC development
Změna Linux Login Shell
Windows media video ve Firefoxu v linuxu
Předávání parametrů do BASH funkcí referencí
Web browsing via ssh/socks proxy
Ubuntu live z usb flash
Vypnutí automatické synchronizace ActiveSync ve Windows Mobile
Automatické odpojení GPRS na Windows Mobile
Windows fonty v linuxu
Java plugin do Firefoxu pod linuxem
Mysql default encoding
MythTV samozapnutí PC před nahráváním
Wake on LAN vs linux / Zapínání PC mobilem
Text to speech
VirtualBox rozlišení 1920x1080
LIRC / MythTV s dálkovým ovládáním
VirtualBox rebuild kernel modulu
Cool'n'Quiet vs linux
KWorld DVB-T 210 vs linux
NVIDIA PureVideo vs linux
Bluetooth myš vs linux
Copyright © 2007-2023 Josef Kyrian, designed by Luke