Shadowsoks is somewhat not stable here, and it looks like the gfw detects it and prevent my ip from connecting the remote shadowsocks server. Once I change my external IP, the connection is good again.
obfsproxy scramblesuit --password=FANGBINXINGFUCKYOURMOTHERSASS444 --dest=106.186.123.157:48080 client 127.0.0.1:48080