Twitter, o co chodzi?

Żeby zrozumieć o co chodzi w Twitterze wystarczy się zapisać, zaprosić paru znajomych i dać się wkręcić. Jednak już dawno temu Polacy skumali o co tam chodzi i opisali to na swoich blogach, np tutaj. Post może z lekka stary ale jary. Można tam poczytać o co w tym całym Twitterze chodzi. Pozdro

A poniżej obrazek z angielskiego bloga. Twitter = Next Generation Blog 🙂

Next gen. blog

Zamierzam z tego korzystać, w szczególności, że ceny smartfonów idą w dół i chyba wkrótce sobie jakiegoś sprawię.

P.S. Poprawiłem linka.

Twitter?

Przeglądając strony zza oceanu wyraźnie widać, że popularność zdobywa nowa stronka: twitter.com. Niby cośtam ala facebook, myface, niby coś tam nowego. Pewnie nie warto sprawdzać. Ale gdy czytam kolejne posty a między innymi to, że Google może w tym tygodniu kupić stronę za $2m, to zastanawiam się, czy czasem tego nie sprawdzić.

Oczywiście strona jest po angielsku i po jakiemuś jeszcze (japoński może?), więc szybko nie zyska w Polsce popularności. Z drugiej strony dużo opcji tam nie ma. Po prostu wpisujesz co akurat robisz. Nic więcej.

Trzeba po prostu się zapisać i sprawdzić. To nic nie kosztuje.

Logo Twitter\'a

Segmentacja wododziałowa

Chyba czas zacząć pokazywać jakieś przykłady super fajnej segmentacji wododziałowej. Na początek przykładowe logo:

obraz źródłowy

To samo już po segmentacji i pokolorowaniu każdego obszaru spływu na (prawie) inny kolor:

po segmentacji i kolorowaniu

Kolejny obrazek przedstawia zbinaryzowaną wersję obrazu wejściowego:

binarny obraz

Możemy zobaczyć jak wyglądają tamy po takiej segmentacji:

tamy

A na koniec połączenie tam i obrazu wejściowego. Docelowo tamy powinny być np. koloru czerwonego, aby łatwiej odróżniały się od krawędzi figur:

nałożenie tam na obraz wejściowy

Eh wszystko ładnie pięknie. Brakuje tylko tych prostokącików w środku. Ich mój algorytm po prostu nie wykrył. Dla porównania algorytm Cannego dla wykrywania linii (Canny’s Edge Detector) z domyślnymi wartościami (128, 15):

przykładowy obraz po zastosowaniu algorytmu Cannego

A Canny wykrył mniejsze prostokąciki…niestety.

Czas zmian, czas na wordpress

Długo nie updatowałem stronki… po prostu nie miałem czasu. Brak czasu spowodował też że nie będę rozwijał mojego 'oryginalnego’ UI i API. Zamiast tego skorzystam z gotowego, wykorzystywanego na całym świecie WordPress’a. A co tam?! Jak inni mogą to i ja…

Swoją drogą mam nadzieje, że teraz będę mógł zapisać więcej informacji w krótszym czasie. Co za tym idzie stronka będzie na bieżąco, a nie jak kiedyś raz na miesiąc 20 postów 🙂

Pozdro dla wszystkich, którzy to czytają oraz dla Prosiaka, bo ma dzisiaj swoje 25te urodziny.

Wordpress górą!

Pomoc dla Wstęp do Systemów Sieciowych

Part 01

Tryby graficzne:
text: knoppix 2 vga=normal [nodhcp]
gfx: knoppix xmodule=i810 [nodhcp]

Podstawowe komendy:

reboot halt pump su

Tcpdump:

tcpdump -X port 68
lcpdump -i eth0
lcpdump -c 3
tcpdump - -c liczba -F file -i [expression]
gdzie expression to np. type (host, net, port), direction (src, dst, src and (or) dst), protocol (ether, ip, tcp, udp, arp, rarp), logical (and, or, not)

Numery portow popularnych serwisow znajdziemy w pliku [/etc/services]

// tcpdump zp proto tcp host 158.75.2.230
tcpdump tcp
tcpdump ether host

Minicom:

minicom (potem) CTRL+A, O
w Serial Port Setup ustawiamy seriale
Komentarz:
[Wojtas] Żeby wyjść z tego czegoś wciskamy CTRL+A, Q. Najlepiej w opcjach zrobić najpierw save… 😛

Zadanie 1: (SLIP)

—|— Zadanie (treść wg moodle): —|—
SLIP: Połączyć dwa komputery: SLIP, sieć 192.168.0.x/30
—|— —|— —|— —|— —|—

K1 SLIP [Polaczenie miedzy dwoma komputerami przez porty szeregowe:]
/sbin/slattach -v -s 38400 -p slip /dev/ttys0
sleep 3 [Wojtas: po prostu wciskamy CTRL+Z, a potem 'bg 1′ aby proces dzialal w tle]
/sbin/ifconfig sl0 192.168.0.1 netmask 255.255.255.224
/sbin/ifconfig sl0 pointopoint 192.168.0.2
route add 192.168.0.2 sl0
[analogicznie na drugim kompie]

Komentarz:
[Wojtas] Do zaliczenia trzeba pokazac poprzez 'tcpdump -i slip’, ze ping idzie na tym interfejsie.

Zadanie 2: (PLIP)

—|— Zadanie (treść wg moodle): —|—
PLIP: Połączyć dwa komputery: PLIP, sieć 192.168.0.x/30
—|— —|— —|— —|— —|—

K2 1<–>2 [Porty drukarki]
// to nie dziala: insmod plip.to
modprobe plik
/sbin/ifconfig plip0 192.168.0.1 netmask 255.255.255.224
// w poprzednich komendach zamieniamy 'sl0′ na 'plip0′ i powinno dzialac

Zadanie 3: (TFTP)

—|— Zadanie (treść wg moodle): —|—
TFTP: sieć 192.168.0.x/30: serwer tftp-hpa-0.43
—|— —|— —|— —|— —|—

cd /ramdisk
wget http://www.kernel.org/pub/software/network/tftp/tftp-hpa-0.43.tar.gz
tar vzxfp tftp-hpa-0.43.tar.gz
cd tftp-hpa-0.43/
make
1) cd tftpd/
./tftpd -opcje…. 😉 [np. tftpd -c -f]
2) cd tftp/
./tftp -opcje … 🙂 [np. tftp ip-servera] [potem get nazwa-pliku lub put nazwa-pliku]

Pokazać, ze dziala przeslanie poprzed tcpdump’a.
Komentarze:
[Wojtas]
Wymagane jest pokazanie użycia komendy post oraz get (u doktora S.);
Domyślnie, gdy ściągniemy tftp do katalogu np. /ramdisk/tftp, to najlepiej jest umieszczac pliki testowe w /ramdisk, bo ma on prawa 777. Ciężko jest wyczuć jakie prawa trzeba nadać aby moc odczytac/zapisac pliki gdzies indziej.
Jeśli nie pamiętamy co należy w kliencie podac po komendzie get/put wystarczy wcisnac enter a tftp zapyta nas o brakujace parametry (lepiej nie wpisywac np. put plik dokad, bo nie ma takiej komendy, jest tylko 'put plik’ albo 'get plik’)

DHCP

cd /etc/dhcp3/
[vi dhcpd.conf]
/etc/init.d/dhcp3-server [status, start, stop, restart]

opcje w dhcpd.conf:
default_lease_time 86400 #one day
max_lease_time 640
ddns_update_style ad-hoc
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.2 192.168.0.250
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
}
host zupa {
hardware ethernet 00:0b:db:65:80:eb;
fixed-address 192.168.0.69;
}

Kopiowanie na pena:

PD
mkdir /sda
mount /dev/sda1 /sda
umount /sda
SCP
pump
tar gzip
scp nazwa.pliku @ultra60

Knopix cheat codes:
http://www.knoppix.net/wiki/Cheat_Codes

Zadanie 4: PXE

—|— Zadanie (treść wg moodle): —|—
PXE: boot knoppixa przez sieć: 192.168.0.x/30
—|— —|— —|— —|— —|—
1.
/etc/init.d/knoppix-terminalserver [start | configure | stop]
2.
Zmieniamy DHCPd (tak jak powyzej) aby przydzielil drugiemu konputerowi adres ip na podstawie mac’a.
3.
Resetujemy DHCPd (reszta rzeczy wystartowala po skonfigurowaniu w punkcie 1.)
[Wojtas, dokładniej:
– edytujemy plik /etc/dhcp3/dhcpd.conf
– dodajemy czesc o hoscie, podajemy w niej statyczny adres ip oraz mac; dopisujemy to na koncu pliku
– restartujemy dhcpd, czyli '/etc/init.d/dhcp3-server restart
Jesli nie zapomnielismy gdzies srednikow i wpisalismy poprawnie mac’a to powinno pojsc]
4. Restart drugiego kompa ktory jest podlaczony do nas kablem (przed restartem mozna spradzic czy przechodzi ping)

Zadanie 5: Etherboot

—|— Zadanie (treść wg moodle): —|—
Etherboot: boot dos/ka9q przez sieć: 192.168.0.x/30
—|— —|— —|— —|— —|—

Z tablicy:
server: bootpd
tftpd: obraz_systemu
Etherboot: dyskietka
obraz: plik, ktory zawiera system msdos/ka9q

./bootpd -s bootptab
./tftpdir -c -l /ramdisk/tftpdir

po sciagnieciu pliku fmsdos z moodle:
mount -t vfat -o loop fmsdos /mnt

sciagamy tez ze strony:
http://rom-o-matic.net/5.0.4/
sterowniki od naszej karty sieciowej

ftp://ftp.icm.edu.pl/pub/Linux/sunsite/system/network/boot.net/bootpd-2.4.tar.gz

Rozwiązanie:
1. Ściągamy i kompilujemy bootpd. (albo ściągamy i rozpakowujemy plik bootpd.gz z moodle).
a. Wypakowany plik bootpd zmieniamy na uruchamialny:
chmod u+x booptd

b. Tworzymy plik z konfiguracją, np. vi bootptab (później będziemy używać tej nazwy)
c. Wypisujemy plik następującymi danymi:
#bootptab
global.prof:
:sm=255.255.0:
:ds=192.168.0.1:
:gw=192.168.0.1:
:ht=ethernet:
:bf=msdos:
ws001:hd=/ramdisk/tftpdir:tc=global.prof:ha=00e04c9011c7
ws002:hd=/ramdisk/tftpdir:tc=global.prof:ha=00e07d98182b:ip=192.168.0.2
gdzie:
i. nasz adres MAC jest na końcu przedostatniej linii, zaś naszego sąsiada (kompa który będzie się bootował) w ostatniej
ii. wg tej konfiguracji serwer ma ip 192.168.0.1 zaś klient dostanie 192.168.0.2
d. Uruchamiamy bootpd poprzez wpisanie: ./bootpd -s bootpdtab
e. Proces bootpd powinien chodzić jak sprawdzimy przez ps’a. Oczywiście jeśli coś jest źle w konfigu to się nie dowiemy. To jest najgorsze z tego wszystkiego.
2. Ściągamy, komilujemy i instalujemy serwer tfp. Czyli, np. ./configure –prefix /ramdisk/tftp, potem make i make install.
Zatem bedę miał całość w /ramdisk/tftp (serwer: /ramdisk/tftp/sbin/in.tftpd zaś klient: /ramdisk/tftp/bin/tftp).
Tak więc, stawiamy szybko sewer:
a. Tworzymy sobie jakiś katalog, np. mkdir /ramdisk/tftpdir
b. Zmieniamy mu prawa na jakieś lepsze: chmod 0777 /ramdisk/tftpdir
c. Startujemy serwer: /ramdisk/tftp/sbin/in.tftp -c -l /ramdisk/tftpdir
[ łatwo można teraz sprawdzić, czy wszystko jest ok, wpisując:
touch /ramdisk/tftpdir/test
chmod 0777 /ramdisk/tftpdir/test
/ramdisk/tftp/bin/tftp
connect localhost
get /ramdisk/tftpdir/test
(powinno się pokazać, że dostaliśmy plik, czyli jest ok ]
3. Tworzymy i modyfikujemy dysk, który zostanie pobrany przez pxe (etherboot’a):
a. Ściagamy plik fmsdos z moodle (i dalej zakładamy że mamy go w katalogu w którym jesteśmy)
b. Montujemy plik: mount -t vfat -o loop fmsdos /mnt
c. Dokopiowujemy drivery: cp *.exe /mnt
d. Zmieniamy plik ka9q.bat
e. Odmountuwujemy: umount /mnt
f. Musimy jeszcze tylko zamienic ten plik na inny format: mknbi-dos fmsdos > msdos

TFTPD
chmod 0777 /ramdisk/tftpdir
./tftpd -c -l /ramdisc/tftpdir

DOS:

mount -t vfat -o loop fmsdos /mnt
cp /mnt
edit ka9q.bat
unmount /mnt
dd if=fmdos of=dev/fd0
mknbi-dos fmsdos >msdos

Zaliczenie zadań

Zadania od 1 do 5 trzeba zaliczyć do końca października na zajęciach.
2 zajęcia: pierwsze 2h i drugie 4h (minus pewnie jakaś prezentacja)

Part 02

Zadanie 6. ICMP

1. komputer

Sciagnac paczke (ze sourceforge’a, google: icmp), rozpakowac, make linux
tar xvzfp
./ishd -i 65535 [uruchamiamy serwer]
tcpdump -x -X icmp

2. komputer

Sciagamy paczke, rozpakowac, (plus pewnie tez make)
./ish -i 65535 192.168.72 [startuje klienta]
Po polaczeniu mozna wykonac komende shellowa, np tail /etc/passwd 🙂

Zamykamy przez killall [ish | ishd];

[Wojtas: zadanie bylo tak proste ze az nie trzeba nic tlumaczyc. Najlepiej od razu otworzyc 3 terminale i być gotowym na pokazanie tcpdump’a, odpalenie klienta i serwera tylko poprzez wbicie strzałki w górę i Enter’a. Można tak zaliczyć całe zadanie w 10 sekund]

Zadanie 7. NTP

Uruchomic klienta/servera NTP + przechwycic datagramy NTP.

google: ntp (ntp.org)
np.: ntp-4.2.2p4

configure
make install
more ../ntpd/ntpd.conf
server: 158.75.2.46, 150.254.183.15

uruchamianie serwera:
./ntpd -d -c ntpd.conf
klient(najpierw skompilowac):
ntpq -c peer 192.168.0.254

tcpduim -x -X -s 14400 port ntp

8. Quagga

Na zajecia przyniesc skompilowana paczke!

[potrzeba aby ktos to przeedytowal!]

make install (domyslnie wrzuca do usr/local/etc)
usr/local/etc/zebra.conf
tu jest odpalenie czegostam ;]
(show run show iproute)

ripd -d (def username : zebra) [tez w katalogu /usr/local/etc]
# conf t – tutaj zaczynaja sie komendy identyczne jak na routerach cisco (powodzenia więc)
[conf t uruchamia tryb configuracji routera, t oznacza ze ma byc to wyswietlone na terminalu, mozna podac samo conf, to sie zapyta]

9.ipsec

racoon -F -v -f racoon_1.conf
psk-1.conf

cat psk-1.txt
192.168.254 test

cat set-policy-1

spdadd 192.168.0.253/32 1921 any -P out ipsec
esp/tunnel

racoon-1.conf
sainfo address 192.168.0.253/32 any address 192.168.0.254/32

’Tani’ roaming w Plusie

Plus chciał zaimponować (znaczy musiał, bo Unia Europejska wymusiła) i obniżył stawki za roaming w Unii Europejskiej. No i oczywiście jak Plus musiał coś pokręcić.
Po pierwsze oferta dla abonamentu:

eurot1Po drugie do prepaid (simplus):

eurot2
Szybkie porównanie i wychodzi, że lepiej jest mieć simplusa niż abonament ponieważ naliczane opłaty są co 30 sekund a nie 60!
Jeśli to mało, to sprawdźmy ile za te same połączenia żąda od nas konkurencja (PLAY):

eurot3

Promocja trwa tylko do 15 września, ale przecież mogą ją przedłużyć itd. Nawet jeśli nie przedłuża, nie dadzą nowej promocji to wciąż są tańsi od Plusa:

eurot4

Zatem znów Plus wychodzi na minus 😛