Index: uspace/app/dnsres/dnsres.c
===================================================================
--- uspace/app/dnsres/dnsres.c	(revision 44ecf894e75e499c21daf2e1b5fbc588301e35e5)
+++ uspace/app/dnsres/dnsres.c	(revision e006ba5af0ea67bfcd13a1ce5218726c2ea37c8b)
@@ -50,4 +50,5 @@
 	int rc;
 	dnsr_hostinfo_t *hinfo;
+	char *hname;
 	char *saddr;
 
@@ -57,5 +58,7 @@
 	}
 
-	rc = dnsr_name2host(argv[1], &hinfo);
+	hname = argv[1];
+
+	rc = dnsr_name2host(hname, &hinfo);
 	if (rc != EOK) {
 		printf(NAME ": Error resolving '%s'.\n", argv[1]);
@@ -70,5 +73,9 @@
 	}
 
-	printf("Host name: %s address: %s\n", hinfo->name, saddr);
+	printf("Host name: %s\n", hname);
+	if (str_cmp(hname, hinfo->cname) != 0)
+		printf("Canonical name: %s\n", hinfo->cname);
+	printf("Address: %s\n", saddr);
+
 	dnsr_hostinfo_destroy(hinfo);
 	free(saddr);
Index: uspace/app/ping/ping.c
===================================================================
--- uspace/app/ping/ping.c	(revision 44ecf894e75e499c21daf2e1b5fbc588301e35e5)
+++ uspace/app/ping/ping.c	(revision e006ba5af0ea67bfcd13a1ce5218726c2ea37c8b)
@@ -234,5 +234,5 @@
 
 	if (hinfo != NULL) {
-		rc = asprintf(&sdest, "%s (%s)", hinfo->name, adest);
+		rc = asprintf(&sdest, "%s (%s)", hinfo->cname, adest);
 		if (rc < 0) {
 			printf(NAME ": Out of memory.\n");
