TL-ER2260T安装dnsmasq并设置域名劫持
·
TL-ER2260T安装dnsmasq并设置域名劫持
第一步,安装entware
- 安装
entwarecd /tmp wget http://bin.entware.net/armv7sf-k3.2/installer/generic.sh sh generic.sh - 将
entware加入环境变量
如下所示:修改环境变量:vi /etc/profile 修改行4 export PATH=/opt/bin:/opt/sbin:/bin:/sbin:/usr/bin:/usr/sbin#!/bin/sh [ -f /etc/banner ] && cat /etc/banner export PATH=/opt/bin:/opt/sbin:/bin:/sbin:/usr/bin:/usr/sbin #改这里 export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6) export HOME=${HOME:-/root} export PS1='\u@\h:\w\$ ' [ -x /bin/more ] || alias more=less [ -x /usr/bin/vim ] && alias vi=vim || alias vim=vi [ -z "$KSH_VERSION" -o \! -s /etc/mkshrc ] || . /etc/mkshrc [ -x /sbin/arp ] || arp() { cat /proc/net/arp; } [ -x /usr/bin/ldd ] || ldd() { LD_TRACE_LOADED_OBJECTS=1 $*; } - 重新登陆ssh,尝试使用entware安装软件
opkg update opkg install curl opkg install drill - 给
entware环境设置自启动
entware启动脚本:vi /etc/init.d/entware#!/bin/sh /etc/rc.common # Copyright (C) 2008-2010 OpenWrt.org START=99 start() { /opt/etc/init.d/rc.unslung start } stop() { /opt/etc/init.d/rc.unslung stop } restart() { stop start } reload() { restart } - 保存并启动entware
chmod +x /etc/init.d/entware /etc/init.d/entware enable
参考:https://blog.03k.org/post/er2260t_setting.html
第二步,安装dnsmasq
- 安装
dnsmasq-fullopkg install dnsmasq-full - 设置dnsmasq
取消注释并修改:vim /opt/etc/dnsmasq.conf
保存# 设置监听局域网 listen-address=192.168.1.1,127.0.0.1 # 192.168.1.1 是dns服务器地址 # 制定域名指向内网IP address=/www.yourdomain.com/your-server-ip # www.yourdomain.com是域名,your-server-ip是内网服务器地址 # 设置上游DNS服务器配置文件路径 resolv-file=/etc/resolv.conf # 修改DNS缓存大小 cache-size=5000 - 启动dnsmasq
如果直接运行dnsmasq会报错:dnsmasq: failed to create listening socket for port 53: Address already in use
检查发现,这是因为ER2260T自带的root@TP-LINK:/usr/sbin# ps | grep dns 517 root 2852 S grep dns 1557 root 1316 S {tpddnsd} /bin/sh /usr/sbin/tpddnsd 3383 root 2048 S /usr/sbin/dnsproxyddnsproxyd服务已经占用端口,我们需要关闭该服务:
然后再执行/etc/init.d/dnsproxy stop /etc/init.d/dnsproxy disable chmod -x /etc/init.d/dnsproxy # 降低权限,防止开机自启动dnsmasq,打开dnsmasq服务
更多推荐



所有评论(0)