如何使用代理获取DNS记录

I have some problem.

I need to use proxy for get dns records via 8.8.8.8

But I had some error in my code.

Cannot use &dialer (type *proxy.Dialer) as type *net.Dialer in field value

My code is:

package main

import (
    "log"

    "github.com/miekg/dns"
    "golang.org/x/net/proxy"
)

func checkErr(err error) {
    if err != nil {
        log.Fatal(err)
    }
}

func main() {
    dialer, err := proxy.SOCKS5("tcp", "12.34.56.78:8085", nil, proxy.Direct)
    checkErr(err)
    dnsServer := "8.8.8.8:53"
    c := dns.Client{
        Net: "tcp",
        Dialer: &dialer,
    }
    m := dns.Msg{}
    m.SetQuestion("google.com.", dns.TypeA)
    a, _, err := c.Exchange(&m, dnsServer)
    checkErr(err)
    for _, ans := range a.Answer {
        log.Println(ans.(*dns.A).A)
    }
}

Thanks for any ideas.