diff --git a/include/libgtpnl/gtpnl.h b/include/libgtpnl/gtpnl.h
index 3d3fd73..49ba03d 100644
--- a/include/libgtpnl/gtpnl.h
+++ b/include/libgtpnl/gtpnl.h
@@ -16,8 +16,7 @@
 
 struct in_addr;
 
-int gtp_dev_create(int dest_ns, const char *gtp_ifname, const char *real_ifname,
-		   int fd0, int fd1);
+int gtp_dev_create(int dest_ns, const char *gtp_ifname, int fd0, int fd1);
 int gtp_dev_config(const char *iface, struct in_addr *net, uint32_t prefix);
 int gtp_dev_destroy(const char *gtp_ifname);
 
diff --git a/src/gtp-rtnl.c b/src/gtp-rtnl.c
index 76e2021..527015b 100644
--- a/src/gtp-rtnl.c
+++ b/src/gtp-rtnl.c
@@ -104,8 +104,7 @@
 	return ret;
 }
 
-int gtp_dev_create(int dest_ns, const char *gtp_ifname, const char *real_ifname,
-		   int fd0, int fd1)
+int gtp_dev_create(int dest_ns, const char *gtp_ifname, int fd0, int fd1)
 {
 	char buf[MNL_SOCKET_BUFFER_SIZE];
 	struct nlmsghdr *nlh;
@@ -122,7 +121,6 @@
 
 	if (dest_ns >= 0)
 		mnl_attr_put_u32(nlh, IFLA_NET_NS_FD, dest_ns);
-	mnl_attr_put_u32(nlh, IFLA_LINK, if_nametoindex(real_ifname));
 	mnl_attr_put_str(nlh, IFLA_IFNAME, gtp_ifname);
 	nest = mnl_attr_nest_start(nlh, IFLA_LINKINFO);
 	mnl_attr_put_str(nlh, IFLA_INFO_KIND, "gtp");
diff --git a/tools/gtp-link-add.c b/tools/gtp-link-add.c
index 3d893eb..4ef025e 100644
--- a/tools/gtp-link-add.c
+++ b/tools/gtp-link-add.c
@@ -43,8 +43,8 @@
 	unsigned int seq, portid, change = 0, flags = 0;
 	struct nlattr *nest, *nest2;
 
-	if (argc != 2) {
-		printf("Usage: %s [ifname]\n", argv[0]);
+	if (argc != 1) {
+		printf("Usage: %s\n", argv[0]);
 		exit(EXIT_FAILURE);
 	}
 
@@ -62,7 +62,6 @@
 	int fd1 = socket(AF_INET, SOCK_DGRAM, 0);
 	int fd2 = socket(AF_INET, SOCK_DGRAM, 0);
 
-	mnl_attr_put_u32(nlh, IFLA_LINK, if_nametoindex(argv[1]));
 	mnl_attr_put_str(nlh, IFLA_IFNAME, "gtp0");
 	nest = mnl_attr_nest_start(nlh, IFLA_LINKINFO);
 	mnl_attr_put_str(nlh, IFLA_INFO_KIND, "gtp");
