GoLang: net.LookupHost mengembalikan ip pendua

WBOY
Lepaskan: 2024-02-09 13:00:19
ke hadapan
418 orang telah melayarinya

GoLang:net.LookupHost 返回重复的 ip

Apa yang akan diperkenalkan oleh editor php kepada anda hari ini ialah jaring fungsi.LookupHost dalam bahasa Go Fungsi ini mungkin mengembalikan alamat IP pendua apabila melaksanakan resolusi nama hos. Dalam aplikasi praktikal, ini boleh menyebabkan masalah seperti menyambung ke pelayan yang sama beberapa kali. Oleh itu, kita perlu memahami punca dan penyelesaian masalah ini untuk memastikan ketepatan dan kestabilan kod. Dalam artikel berikut, kami akan menganalisis masalah ini secara terperinci dan memberikan penyelesaian yang sepadan. nantikan!

Kandungan soalan

Saya cuba menjalankan net.lookuphost untuk mendapatkan alamat ip komputer yang menjalankan kod saya. Ia berfungsi pada kebanyakan mesin, tetapi pada beberapa mesin ia mengembalikan kepingan dengan dua entri: ip yang betul dan entri pendua dengan ip yang sama.

Saya cuba menjalankan nslookup pada hos tetapi ia hanya mengembalikan satu entri.

Tambahkan kod pada soalan -

hostname, _ := os.Hostname()

    ips, err := net.LookupHost(hostname)

    if err != nil {
            fmt.Printf("%d\n", err.Error())
    }

    fmt.Printf("Hello, 世界 %#v \n", ips)

    ips2, err := net.LookupIP(hostname)

    if err != nil {
            fmt.Printf("%d\n", err.Error())
    }

    fmt.Printf("Hello, 世界 %#v \n", ips2)
Salin selepas log masuk

Saya menjangkakan net.lookuphost hanya memberikan satu entri dalam respons, tetapi ia memberikan dua entri yang sama dalam respons.

Penyelesaian

Kelihatan seperti isu penyelesaian DNS. Jika ia berfungsi pada pelayan lain, cuba semak fail /etc/hosts.

Sistem mula-mula menanyakan fail /etc/hosts dan kemudian pelayan DNS.

Sumber: https://debian-handbook.info /browse/stable/sect.hostname-name-service.html

Atas ialah kandungan terperinci GoLang: net.LookupHost mengembalikan ip pendua. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!