Golang : Whois examples
Whois a network utility to find out "who is" the owner behind a domain name. Some owners will display all the private information such as personal home address, mobile/cell phone numbers and while some will choose to protect their privacy. Here are couple of examples on how to implement whois
query in Golang.
Example 1:
package main
import (
"fmt"
"net"
)
func whois(domainName, server string) string {
conn, err := net.Dial("tcp", server+":43")
if err != nil {
fmt.Println("Error")
}
defer conn.Close()
conn.Write([]byte(domainName + "\r\n"))
buf := make([]byte, 1024)
result := []byte{}
for {
numBytes, err := conn.Read(buf)
sbuf := buf[0:numBytes]
result = append(result, sbuf...)
if err != nil {
break
}
}
return string(result)
}
func main() {
result := whois("socketloop.com", "com.whois-servers.net")
fmt.Println(result)
}
Example 2:
package main
import (
"fmt"
"github.com/likexian/whois-go"
)
func main() {
result, err := whois.Whois("socketloop.com")
if err != nil {
fmt.Println(err)
}
fmt.Println(result)
}
References :
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+11.6k Golang : Get terminal width and height example
+26.6k Golang : Decode/unmarshal unknown JSON data type with map[string]interface
+6.5k Golang : Individual and total number of words counter example
+10.6k Golang : Get remaining text such as id or filename after last segment in URL path
+4.2k Linux/Unix/MacOSX : Find out which application is listening to port 80 or use which IP version
+15.6k Golang : Merge video(OpenCV) and audio(PortAudio) into a mp4 file
+18.4k Golang : Archive directory with tar and gzip
+6k Golang : Normalize email to prevent multiple signups example
+8k Golang : Populate or initialize struct with values example
+8k Golang : Get SPF and DMARC from email headers to fight spam
+4.5k Python : Delay with time.sleep() function example