Avatar billede stephanryer Nybegynder
07. september 2006 - 18:51 Der er 5 kommentarer og
2 løsninger

Checke om domæne er ledigt

Er der er måde hvorpå man kan se om et domæne er ledigt fra .NET?

Har kun 10 point pt :)

På forhånd tak
Avatar billede nielle Nybegynder
07. september 2006 - 19:04 #1
Snakker vi om et domæne generelt, eller om et .dk specifikt?
Avatar billede stephanryer Nybegynder
07. september 2006 - 19:07 #2
.com og .net specifikt.
Avatar billede tigertool Nybegynder
07. september 2006 - 19:18 #3
Lav en TCPClient til whois.crsnic.net på port 43 og se om der er noget registereret på det givne domænenavn. Der kan du få oplyst om .COM, .NET og .EDU så vidt jeg husker ;)
Avatar billede nielle Nybegynder
07. september 2006 - 19:37 #4
/// <summary>
        /// Laver en request til en whois-server for at teste om
        /// et givet domæne er ledigt (returværdi true) eller ej (returværdi false).
        /// </summary>
        /// <param name="domain">Domænet - f.eks. eksperten</param>
        /// <param name="tld">Top-level domænet - f.eks. dk</param>
        /// <param name="verbose">Hvis sand udskrives svaret fra whois-servern</param>
        /// <returns>Sandt hvis domænet er frit, false hvis
        /// domænet er optaget eller at TLD'et er ukendt</returns>
        static bool Whois(string domain, string tld, bool verbose)
        {
            tld = tld.ToLower();

            string whoisHost;
            int whoisPort = 43;
            string negativeReply;

            switch (tld)
            {
                case "com":
                case "net":
                    whoisHost = "whois.crsnic.net";
                    negativeReply = "No match for";
                    break;
                case "dk":
                    whoisHost = "whois.dk-hostmaster.dk";
                    negativeReply = "No entries found";
                    break;
                default:
                    return false;
            }

            TcpClient whoisClient = new TcpClient();
            whoisClient.Connect(whoisHost, whoisPort);

            string domainStr = string.Format("{0}.{1}\r\n", domain, tld); ;
            byte[] domainArr = Encoding.ASCII.GetBytes(domainStr.ToCharArray());

            Stream stream = whoisClient.GetStream();
            stream.Write(domainArr, 0, domainArr.Length);

            StreamReader sr = new StreamReader(whoisClient.GetStream(), Encoding.ASCII);
            string reply = sr.ReadToEnd();

            whoisClient.Close();

            if (verbose)
                Console.WriteLine(reply);

            return reply.Contains(negativeReply);
        }
    }
Avatar billede stephanryer Nybegynder
07. september 2006 - 19:44 #5
Tak drengene. Nielle læg et svar.
Avatar billede nielle Nybegynder
07. september 2006 - 19:45 #6
Svar :^)
Avatar billede stephanryer Nybegynder
07. september 2006 - 19:53 #7
Og jeg kan fortælle at dine kode virker perfekt, nielle :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester