2011年10月25日 星期二

2011年10月14日 星期五

[Tips] Ubuntu WiFi: SIOCSIFFLAGS: Operation not possible due to RF-kill

我工作是使用阿宅專用IBM x系列的記事本,最近在同的網路切換過程中,常會切換底下的無線網路開關,但是最近遇到一個狀況是,在關閉無線網路後再打開,無線網路的driver就會掛不進來...

無線網路消失... 先試著重新啟動wlan0
$ sudo ifconfig wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill

查詢一下目前radio的狀態
$ sudo rfkill list all
1: tpacpi_bluetooth_sw: Bluetooth
 Soft blocked: no
 Hard blocked: no
2: phy0: Wireless LAN
 Soft blocked: no
 Hard blocked: yes
7: hci0: Bluetooth
 Soft blocked: no
 Hard blocked: no
Soft blocked: no是目前並沒有被軟體禁用,而Hard blocked: yes表示目前被硬體禁用,例如有些laptop有做硬體的radio switch可控制wifi和bluetooth的開啟/關閉,看來除了重開機以外重新載入無線網路模組也許可行

先查詢模組名稱
$ sudo lshw -class network
  *-network DISABLED      
       description: Ethernet interface
       product: 82566MM Gigabit Network Connection
       vendor: Intel Corporation
       physical id: 19
       bus info: pci@0000:00:19.0
       logical name: eth0
       version: 03
       serial: 00:1d:72:94:8c:xx
       capacity: 1GB/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=1.0.2-k4 firmware=0.3-0 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:42 memory:fe000000-fe01ffff memory:fe225000-fe225fff ioport:1840(size=32)
  *-network DISABLED
       description: Wireless interface
       product: PRO/Wireless 4965 AG or AGN [Kedron] Network Connection
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlan0
       version: 61
       serial: 00:1f:3b:82:b7:xx
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=iwlagn driverversion=2.6.35-28-generic firmware=228.61.2.24 latency=0 link=yes multicast=yes wireless=IEEE 802.11abg
       resources: irq:44 memory:fdf00000-fdf01fff

重新掛載
$ sudo modprobe -r iwlagn

再試著重新啟動wlan0
$ sudo ifconfig wlan0 up
wlan0: ERROR while getting interface flags: No such device

看來模組沒有重新安裝成功,重新掛載
$ sudo modprobe iwlagn

再試著重新啟動wlan0
$ sudo ifconfig wlan0 up

重新啟動NetworkManager自動抓取無線網路
$ sudo service network-manager restart

搞定收工

2011年9月28日 星期三

[Tips] Dia

雖然用Linux好一段時間了,可是在文書處理上有時候會切到M$做,因為OpenOffice用起來就是不太順手
最近在畫流程圖,Dia應該是首選吧,紀錄一下相關的資源:
* Dia project
* 流程圖繪製 Dia
* Dia 0.92.2-1影音教學

2011年9月22日 星期四

[阿宅專區] 電腦圖學的應用

最近逛到對岸的一個網站,深入淺出的介紹一些有趣的東西,比如說google的新服務,相似圖片搜索,雖然現在我還不清楚背後的運作原理是什麼,但是這篇提供了一個方向讓我有興趣的繼續瞭解下去...

不過話說回來,搜尋結果跟想像的還有一些差距阿 @@a

reference:
* 相似圖片搜索的原理
* 神奇的圖像處理算法

2011年9月21日 星期三

[資訊安全] Reversing SSH Tunneling

最近需要連到防火牆後的某台電腦找東西,發現透過reverse ssh就可以做反向連線,輕鬆達陣

情境是這樣,要從123.45.67.89(public)連線到192.168.0.100(private):
Destination(192.168.0.100) <-- |NAT| <-- Source(123.45.67.89)

in destination host
dst$ ssh -R 1234:localhost:22 username@123.45.67.89

in source host
src$ ssh localhost -p 1234

目前是用ssh做,我想nc應該也有類似的功能,找到再補上吧

reference: Reverse SSH Tunneling

2011年8月31日 星期三

[阿宅專區] The Architecture of Open Source Applications


剛剛逛到這本書,裡面有許多有名的專案,其中唐鳳所做的SocialCalc看起來相當有趣阿,話說我應該會買個PDF的版本支持一下


2011年8月29日 星期一

[Network] Configuring multiple default routes and name resolving with 1 network interface card

上篇的多重routing與name resolving,再稍做改良就可以用一張網卡同時使用PPPoE撥號連線並支援多重路由,直接看script吧
#!/bin/bash

# pppoe dial up
RETRY=5
PPP=`ifconfig|grep -in ppp`
until [ $RETRY -le 0 ] || [ -n "$PPP" ]
do pon dsl-provider
  sleep 30
  PPP=`ifconfig|grep -in ppp`
  ((RETRY=RETRY-1))
done

# eth0 setting
IF2=eth0
IP2=10.157.132.104
NM2=255.255.240.0
NT2=10.157.128.0/20
GW2=10.157.143.254

IP3=172.17.125.5
NM3=255.255.255.0
NT3=172.17.125.0/24

# some network for my own purpose
NM4=224.0.0.0

# default gateway
DGW=${GW2}

# set ip/netmask
ifconfig ${IF2} ${IP2} netmask ${NM2}

# create a new policy routing table entry
T2=`cat /etc/iproute2/rt_tables|awk '{print $2}'|grep -in T2|cut -d : -f 2`
if [ -z "$T2" ]; then
  echo "1 T2" >> /etc/iproute2/rt_tables
fi

# add new entry within this policy table
ip route add ${NT2} dev ${IF2} src ${IP2} table T2
ip route add default via ${GW2} dev ${IF2} table T2

ip rule add from ${NT2} table T2
ip rule add to ${NT2} table T2

ip rule add from ${NT3} table T2
ip rule add to ${NT3} table T2

# add some routing for my own purpose
route add -net ${NM4} netmask ${NM4} dev ${IF2}

# options timeout:1 rotate attempts:1
echo "options rotate"          >  /etc/resolv.conf
echo "nameserver 168.95.192.1" >> /etc/resolv.conf
echo "nameserver 172.17.125.5" >> /etc/resolv.conf

# disable reverse packet filter for my own purpose
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter