Fix spelling errors

Minor errors found by codespell
diff --git a/ip/ipnetns.c b/ip/ipnetns.c
index 794a498..c8a4792 100644
--- a/ip/ipnetns.c
+++ b/ip/ipnetns.c
@@ -167,7 +167,7 @@
 		fprintf(stderr, "unshare failed: %s\n", strerror(errno));
 		return -1;
 	}
-	/* Don't let any mounts propogate back to the parent */
+	/* Don't let any mounts propagate back to the parent */
 	if (mount("", "/", "none", MS_SLAVE | MS_REC, NULL)) {
 		fprintf(stderr, "\"mount --make-rslave /\" failed: %s\n",
 			strerror(errno));
@@ -205,7 +205,7 @@
 				exit(1);
 			}
 
-			/* If child failed, propogate status */
+			/* If child failed, propagate status */
 			if (WIFEXITED(status))
 				exit(WEXITSTATUS(status));
 
@@ -405,7 +405,7 @@
 	/* Create the base netns directory if it doesn't exist */
 	mkdir(NETNS_RUN_DIR, S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH);
 
-	/* Make it possible for network namespace mounts to propogate between
+	/* Make it possible for network namespace mounts to propagate between
 	 * mount namespaces.  This makes it likely that a unmounting a network
 	 * namespace file in one namespace will unmount the network namespace
 	 * file in all namespaces allowing the network namespace to be freed
diff --git a/ip/ipntable.c b/ip/ipntable.c
index 67b199e..193e50c 100644
--- a/ip/ipntable.c
+++ b/ip/ipntable.c
@@ -305,7 +305,7 @@
 	if (!namep)
 		missarg("NAME");
 	if (!threshsp && !gc_intp && !parms_change) {
-		fprintf(stderr, "Not enough information: changable attributes required.\n");
+		fprintf(stderr, "Not enough information: changeable attributes required.\n");
 		exit(-1);
 	}