Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
<?php // // DynDNS function script // Server update local file with IP address // and when IP address is different then IP address in DNS // we change it. // // v myip je moje IP v mtyp je druh zaznamu A AAAA a v hostname je celá doména něco.moje.cz $rmt_ip = $_GET["myip"]; $typ = $_GET["mtyp"]; $domena = $_GET["hostname"]; $pole_domena = explode(".", $domena); // Constants $login = 'uživatelské jméno do WAPI'; $wpass = 'heslo do WAPI'; // If your DYNDNS host is moje.domena.cz, then $domain = domena.cz and $dyndns_domain = moje $domain = 'domena.cz'; $dyndns_domain = $pole_domena[0]; $url = 'https://api.wedos.com/wapi/xml'; $timezone = 'Europe/Prague'; // Kontrola typu zaznamu lze upravovat pouze A a AAAA záznamy. if (($typ != 'A') and ($typ != 'AAAA')) { echo 'Špatný typ záznamu A či AAAA !'; die(); } // Check if provided IP is ok if(!filter_var($rmt_ip, FILTER_VALIDATE_IP)) { echo "IP adresa není platná! ".$rmt_ip."!"; die(); } // auth string date_default_timezone_set($timezone); $auth = sha1($login.sha1($wpass).date('H', time())); // request for domain list $request = '<?xml version="1.0" encoding="UTF-8"?> <request> <user>'.$login.'</user> <auth>'.$auth.'</auth> <command>dns-rows-list</command> <data> <domain>'.$domain.'</domain> </data> </request>'; $post = 'request='.urlencode($request); // curl initialization $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_POST,true); curl_setopt($ch,CURLOPT_POSTFIELDS,$post); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_TIMEOUT,100); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); $res = curl_exec($ch); // výpis výsledku na výstup //echo '<pre>'.htmlspecialchars(print_r($res, true)).'</pre>'; // xml parsing $ip_addr = ''; $row_id = -1; $ttl = -1; $xml = simplexml_load_string(print_r($res, true)); foreach($xml->data->row as $node) { if (($node->name != $dyndns_domain) or ($node->rdtype != $typ)) continue; $ip_addr = $node->rdata; $ttl = $node->ttl; $row_id = $node->ID; } if ($rmt_ip == $ip_addr) { echo 'IP je stejná nedělám nic.'; die(); } if ($row_id < 0 || $ttl < 0) { echo 'Špatné ID nebo DNS záznam či TTL!'; die(); } // request for change IP address $request = '<?xml version="1.0" encoding="UTF-8"?> <request> <user>'.$login.'</user> <auth>'.$auth.'</auth> <command>dns-row-update</command> <data> <domain>'.$domain.'</domain> <row_id>'.$row_id.'</row_id> <ttl>'.$ttl.'</ttl> <rdata>'.$rmt_ip.'</rdata> </data> </request>'; $post = 'request='.urlencode($request); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_POSTFIELDS,$post); $res = curl_exec($ch); // výpis výsledku na výstup echo '<pre>'.htmlspecialchars(print_r($res, true)).'</pre>'; ?>A Jak se to používá, prostě si v DNS vytvoříme záznamy A a AAAA bez toho to nefunguje a pak je můžeme měnit pomocí routeru s OpenWRT kde do nastavení /etc/config/ddns dáme:
config ddns 'global' option date_format '%F %R' option log_lines '250' option allow_local_ip '0' config service 'ddns_router_ipv4' option interface 'wan' option use_syslog '2' option use_logfile '1' option username 'user' option password 'heslo' option enabled '1' option domain 'router.moje.cz' option update_url 'https://[USERNAME]:[PASSWORD]@www.server.cz/soukrome/ddns.php?hostname=[DOMAIN]&myip=[IP]&mtyp=A' option use_https '1' option cacert 'IGNORE' option ip_source 'network' option ip_network 'wan' option dns_server '217.31.204.130' config service 'ddns_router_ipv6' option use_ipv6 '1' option username 'user' option password 'heslo' option ip_source 'network' option interface 'wan6' option ip_network 'wan6' option use_syslog '2' option use_logfile '1' option enabled '1' option domain 'router.moje.cz' option update_url 'https://[USERNAME]:[PASSWORD]@www.server.cz/soukrome/ddns.php?hostname=[DOMAIN]&myip=[IP]&mtyp=AAAA' option use_https '1' option cacert 'IGNORE'
Samozřejmě skript můžeš volat odkudkoliv třeba pomocí wget.
wget -t 1 -O /tmp/ddns.html -o /tmp/ddns.err --no-check-certificate --no-proxy --user=user --password=heslo 'https://server.cz/soukrome/ddns.php?hostname=hostname.cz&mtyp=AAAA&myip='$ipv6
Proměnou $ipv6 naplníme před voláním IPv6 adresou kterou stroj dostal tak stejně můžeme po změně parametrů změnit i IPv4 adresu.
Tiskni
Sdílej: