mirror of https://github.com/Dreamacro/clash.git
Fix: fake-ip-filter on fakeip mode should lookup ip-host mapping (#743)
This commit is contained in:
parent
4323dd24d0
commit
9f1d85ab6e
|
@ -121,7 +121,7 @@ func (r *Resolver) exchangeWithoutCache(m *D.Msg) (msg *D.Msg, err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
putMsgToCache(r.lruCache, q.String(), msg)
|
putMsgToCache(r.lruCache, q.String(), msg)
|
||||||
if r.mapping {
|
if r.mapping || r.fakeip {
|
||||||
ips := r.msgToIP(msg)
|
ips := r.msgToIP(msg)
|
||||||
for _, ip := range ips {
|
for _, ip := range ips {
|
||||||
putMsgToCache(r.lruCache, ip.String(), msg)
|
putMsgToCache(r.lruCache, ip.String(), msg)
|
||||||
|
@ -151,7 +151,10 @@ func (r *Resolver) exchangeWithoutCache(m *D.Msg) (msg *D.Msg, err error) {
|
||||||
// IPToHost return fake-ip or redir-host mapping host
|
// IPToHost return fake-ip or redir-host mapping host
|
||||||
func (r *Resolver) IPToHost(ip net.IP) (string, bool) {
|
func (r *Resolver) IPToHost(ip net.IP) (string, bool) {
|
||||||
if r.fakeip {
|
if r.fakeip {
|
||||||
return r.pool.LookBack(ip)
|
record, existed := r.pool.LookBack(ip)
|
||||||
|
if existed {
|
||||||
|
return record, true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cache, _ := r.lruCache.Get(ip.String())
|
cache, _ := r.lruCache.Get(ip.String())
|
||||||
|
|
Loading…
Reference in New Issue