mac下控制上网的脚本

livejournal的创始人(也是memcached的作者),说有次他坐飞机,无聊拿出笔记本写程序,写着写着就习惯性的打开浏览器访问互联网,当然访问不了,这时他突然意识到自己平 时写代码也是这样不专注,随意上网浏览都成了一种习惯。后来他为此专门找了个iptables的脚本来控制自己。对于控制力不强的同学确实需要。在mac 上可以用ipfw来替代iptables,下面的脚本用来控制我在家里只能访问局域网不能访问外网:

$ cat quiet
#!/bin/sh
sudo ipfw -f flush
#home
sudo ipfw add allow tcp from me to 192.168.1.0/16
sudo ipfw add allow ip from me to 192.168.1.0/16
#company
sudo ipfw add allow tcp from me to 10.0.0.0/8
sudo ipfw add allow ip from me to 10.0.0.0/8
sudo ipfw add allow tcp from me to 119.38.218.129
sudo ipfw add allow ip from me to 119.38.218.129
sudo ipfw add allow tcp from me to 110.75.167.30
sudo ipfw add allow ip from me to 110.75.167.30
#aliwangwang
sudo ipfw add allow tcp from me to 110.75.161.98/24
sudo ipfw add allow ip from me to 110.75.161.98/24
#evernote
#dict.youdao.com
sudo ipfw add allow tcp from me to 220.181.76.13/24
#block
sudo ipfw add deny tcp from me to any
sudo ipfw add deny ip from me to any

恢复的话是:

$ sudo ipfw -f flush

另一个,比较简单的,控制sns网站的dns的:

$ cat disable-sns.sh
#!/bin/sh
cat << EOF >> /etc/hosts
### sns-sites
127.0.0.1   www.laiwang.com
127.0.0.1   laiwang.com
127.0.0.1   www.cnbeta.com
127.0.0.1   cnbeta.com
127.0.0.1   www.weibo.com
127.0.0.1   weibo.com
127.0.0.1   news.sina.com.cn
127.0.0.1   www.douban.com
127.0.0.1   douban.com
127.0.0.1   www.facebook.com
127.0.0.1   facebook.com
### sns-sites
EOF

发表评论

电子邮件地址不会被公开。 必填项已用*标注