Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Poprzednia rewizja po obu stronach Poprzednia wersja
Nowa wersja
Poprzednia wersja
projekty:whois [2018/03/05 02:01]
mw [Whois]
— (aktualna)
Linia 1: Linia 1:
-====== Whois ====== 
  
-^Zamieszany|[[user>​not7cd|not7cd]],​ [[user>​mw|mw]] ​ | 
-^Rozpoczęto|2018-01-12 ​ | 
-^Status|W trakcie ​ | 
- 
-Ogólnie fajnie by było wiedzieć czy ktoś jest w hs'ie. Aktualnie jest działający skrypt dla mikrotika, który wysyła co jakiś czas POST'a do bazy danych po stronie serwera. ​ 
-Stack? 
-  - Mikrotik 
-  - Flask? 
- 
-Skrypt dla Mikrotik z RouterOS >= 6.39 
-<​code>​ 
-# Get DHCP leases records and send selected fields (MAC ADDRESS, HOST NAME, LAST SEEN and STATUS) to a webservice via POST. 
-:put "Get DHCP leases";​ 
-:local leases "";​ 
-:foreach i in=[/ip dhcp-server lease find] do={  
-  :local dhcp [/ip dhcp-server lease get $i]  
-  :local client "​\"​mac\":​\"​$($dhcp->"​active-mac-address"​)\",​\"​name\":​\"​$($dhcp->"​host-name"​)\",​\"​last\":​\"​$($dhcp->"​last-seen"​)\",​\"​status\":​\"​$($dhcp->"​status"​)\"";​ 
-  :set $leases ($leases, $client); 
-} 
-:local json "​[";​ 
-:local first true; 
-:foreach k,v in $leases do={ 
-  if ([:len $v] > 0) do={ 
-    if ($first = true) do={ 
-     :set $json ($json .  "​{"​ . $v . "​}"​);​ 
-    } else={ 
-      :set $json ($json . ",​{"​ .  $v . "​}"​);​ 
-    }; 
-    :set $first false; 
-  } 
-} 
-:set $json ($json."​]"​);​ 
-:local data ("​data="​ . $json); 
-:do { 
-  :put "Send DHCP leases";​ 
-  /tool fetch mode=http url="​http://​webservice"​ keep-result=yes dst-path="​sendleases.txt"​ http-method="​post"​ http-data=$data;​ 
-} on-error={ 
-  :put "Send DHCP leases failed!";​ 
-  log warning "Send DHCP leases failed!";​ 
-} 
-</​code>​ 
- 
-Skrypt wysyła dane w formacie json: 
-<​code>​ 
-[{"​mac":"​11:​22:​33:​44:​55:​66","​name":"​Dom","​last":"​50w6d16h1m10s","​status":"​waiting"​},​{"​mac":"​AA:​BB:​CC:​DD:​EE:​FF","​name":"​HS","​last":"​4d1h58m8s","​status":"​bound"​}] 
-</​code>​ 
-===== Log ===== 
-Proof of Concept: skrypt na mikrotiku komunikujący się z aplikacją 
- --- //​2018/​03/​03 5:36// 
- 
----- 
- 
- 
-===== Podobne projekty ===== 
-  * http://​wiki.hswro.org/​projects/​wlokalu.hswro.org 
-  * https://​github.com/​HackerspaceKRK/​WHOis-HS 
-  * https://​wiki.hackerspace.pl/​projects:​checkinator ​ 
  • projekty/whois.1520211664.txt.gz
  • ostatnio zmienione: 2020/09/24 20:27
  • (edycja zewnętrzna)