根据域名列表生成dnsmasq配置

准备

workspace

cd ~
mkdir g
cd g

#准备域名列表文件
mkdir /etc/g/
touch /etc/g/g.txt

#准备dnsmasq配置文件
mkdir /etc/dnsmasq.d/
touch /etc/dnsmasq.d/g.conf
echo "conf-dir=/etc/dnsmasq.d">>/etc/dnsmasq.conf

gadd.sh

cd ~/g
touch gadd.sh && chmod a+x gadd.sh && vi gadd.sh
#!/bin/sh
touch /etc/g/g.txt
echo "">>/etc/g/g.txt

touch /etc/g/guniq.txt
cat /etc/g/g.txt | sort | uniq > /etc/g/guniq.txt
cat /etc/g/guniq.txt > /etc/g/g.txt

touch /etc/dnsmasq.d/g.conf
cat /etc/g/g.txt | awk '{print "server=/""/8.8.8.8\nipset=/"$1"/vpn"}'>/etc/dnsmasq.d/g.conf

/etc/init.d/dnsmasq restart

使用方法

./gadd.sh facebook.com

gdelete.sh

cd ~/g
touch gdelete.sh && chmod a+x gdelete.sh && vi gdelete.sh
#!/bin/sh
touch /etc/g/g.txt
sed -i "//d" /etc/g/g.txt

touch /etc/g/guniq.txt
cat /etc/g/g.txt | sort | uniq > /etc/g/guniq.txt
cat /etc/g/guniq.txt > /etc/g/g.txt

touch /etc/dnsmasq.d/g.conf
cat /etc/g/g.txt | awk '{print "server=/""/8.8.8.8\nipset=/"$1"/vpn"}'>/etc/dnsmasq.d/g.conf

/etc/init.d/dnsmasq restart

使用方法

./delete.sh facebook.com

glist.sh

touch glist.sh && chmod a+x glist.sh && vi glist.sh
#!/bin/sh
cat /etc/g/g.txt

安装

cp gadd.sh /usr/bin/gadd
cp glist.sh /usr/bin/glist
cp gdelete.sh /usr/bin/gdelete

或者

ln -s `pwd`/gadd.sh /usr/bin/gadd
ln -s `pwd`/glist.sh /usr/bin/glist
ln -s `pwd`/gdelete.sh /usr/bin/gdelete

安装后可以直接使用

gadd google.com
glist
gdelete google.com
glist

卸载

rm /usr/bin/gadd
rm /usr/bin/glist
rm /usr/bin/gdelete
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,131评论 19 139
  • 静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别...
    吃瓜群众呀阅读 12,144评论 3 42
  • --------"道路是曲折的,前途是光明的。"最近又涉及到了hadoop以及spark的安装,之前课题设计中有要...
    九七学姐阅读 3,103评论 3 5
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,081评论 25 709
  • 参考链接 iOS 集合的深复制与浅复制
    光明程辉阅读 50评论 0 0