summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dns.go51
-rw-r--r--gui.go1
-rw-r--r--main.go4
-rw-r--r--unix.go15
4 files changed, 70 insertions, 1 deletions
diff --git a/dns.go b/dns.go
new file mode 100644
index 0000000..017ffce
--- /dev/null
+++ b/dns.go
@@ -0,0 +1,51 @@
+// Various Linux/Unix'y things
+
+// https://wiki.archlinux.org/title/Dynamic_DNS
+
+package main
+
+import (
+// "os"
+// "os/exec"
+ "log"
+ "net"
+// "git.wit.org/wit/gui"
+// "github.com/davecgh/go-spew/spew"
+)
+
+type IPtype struct {
+ // IP string
+ IPv4 bool
+ IPv6 bool
+ LinkLocal bool
+}
+
+type Host struct {
+ Name string
+ domainname string
+ hostname string
+ fqdn string
+ ips map[string]*IPtype
+}
+
+/*
+ Check a bunch of things. If they don't work right, then things are not correctly configured
+ They are things like:
+ /etc/hosts
+ hostname
+ hostname -f
+ domainname
+*/
+func (h *Host) verifyETC() bool {
+ return true
+}
+
+func (h *Host) updateIPs(host string) {
+ ips, err := net.LookupIP(host)
+ if err != nil {
+ log.Fatal(err)
+ }
+ for _, ip := range ips {
+ log.Println(host, ip)
+ }
+}
diff --git a/gui.go b/gui.go
index 3b6270c..732a7b3 100644
--- a/gui.go
+++ b/gui.go
@@ -83,6 +83,7 @@ func addDemoTab(window *gui.Node, title string) {
})
g2.NewButton("DumpPublicDNSZone(apple.com)", func () {
DumpPublicDNSZone("apple.com")
+ dumpIPs("www.apple.com")
})
}
diff --git a/main.go b/main.go
index 29c8829..1d4d4df 100644
--- a/main.go
+++ b/main.go
@@ -9,11 +9,15 @@ import (
arg "github.com/alexflint/go-arg"
)
+var me Host
+
func main() {
arg.MustParse(&args)
// fmt.Println(args.Foo, args.Bar, args.User)
log.Println("Toolkit = ", args.Toolkit)
+ me.ips = make(map[string]*IPtype)
+
// gui.InitPlugins([]string{"andlabs"})
scanInterfaces()
diff --git a/unix.go b/unix.go
index b953c60..3cebd40 100644
--- a/unix.go
+++ b/unix.go
@@ -1,4 +1,7 @@
-// This creates a simple hello world window
+// Various Linux/Unix'y things
+
+// https://wiki.archlinux.org/title/Dynamic_DNS
+
package main
import (
@@ -39,3 +42,13 @@ func DumpPublicDNSZone(zone string) {
log.Println(entry)
}
}
+
+func dumpIPs(host string) {
+ ips, err := net.LookupIP(host)
+ if err != nil {
+ log.Fatal(err)
+ }
+ for _, ip := range ips {
+ log.Println(host, ip)
+ }
+}