diff --git a/include/osmocom/gprs/gprs_ns2.h b/include/osmocom/gprs/gprs_ns2.h
index a3edc63..5f341d9 100644
--- a/include/osmocom/gprs/gprs_ns2.h
+++ b/include/osmocom/gprs/gprs_ns2.h
@@ -139,7 +139,7 @@
 			    const struct osmo_sockaddr *remote,
 			    uint16_t nsei);
 
-const struct osmo_sockaddr *gprs_ns2_ip_vc_sockaddr(struct gprs_ns2_vc *nsvc);
+const struct osmo_sockaddr *gprs_ns2_ip_vc_remote(struct gprs_ns2_vc *nsvc);
 const struct osmo_sockaddr *gprs_ns2_ip_bind_sockaddr(struct gprs_ns2_vc_bind *bind);
 int gprs_ns2_is_ip_bind(struct gprs_ns2_vc_bind *bind);
 int gprs_ns2_ip_bind_set_dscp(struct gprs_ns2_vc_bind *bind, int dscp);
diff --git a/src/gb/gprs_ns2.c b/src/gb/gprs_ns2.c
index 43a3d77..002ea1d 100644
--- a/src/gb/gprs_ns2.c
+++ b/src/gb/gprs_ns2.c
@@ -226,7 +226,7 @@
 		}
 
 		local = gprs_ns2_ip_bind_sockaddr(nsvc->bind);
-		remote = gprs_ns2_ip_vc_sockaddr(nsvc);
+		remote = gprs_ns2_ip_vc_remote(nsvc);
 		if (osmo_sockaddr_str_from_sockaddr(&local_str, &local->u.sas))
 			strcpy(local_str.ip, "invalid");
 		if (osmo_sockaddr_str_from_sockaddr(&remote_str, &remote->u.sas))
@@ -853,7 +853,7 @@
 	OSMO_ASSERT(sockaddr);
 
 	llist_for_each_entry(nsvc, &nse->nsvc, list) {
-		remote = gprs_ns2_ip_vc_sockaddr(nsvc);
+		remote = gprs_ns2_ip_vc_remote(nsvc);
 		if (!osmo_sockaddr_cmp(sockaddr, remote))
 			return nsvc;
 	}
diff --git a/src/gb/gprs_ns2_sns.c b/src/gb/gprs_ns2_sns.c
index 2756226..d4de8ae 100644
--- a/src/gb/gprs_ns2_sns.c
+++ b/src/gb/gprs_ns2_sns.c
@@ -305,7 +305,7 @@
 				if (nsvc->bind != bind)
 					continue;
 
-				if (!osmo_sockaddr_cmp(&remote, gprs_ns2_ip_vc_sockaddr(nsvc))) {
+				if (!osmo_sockaddr_cmp(&remote, gprs_ns2_ip_vc_remote(nsvc))) {
 					found = true;
 					break;
 				}
@@ -340,7 +340,7 @@
 				if (nsvc->bind != bind)
 					continue;
 
-				if (!osmo_sockaddr_cmp(&remote, gprs_ns2_ip_vc_sockaddr(nsvc))) {
+				if (!osmo_sockaddr_cmp(&remote, gprs_ns2_ip_vc_remote(nsvc))) {
 					found = true;
 					break;
 				}
@@ -508,7 +508,7 @@
 	}
 
 	llist_for_each_entry(nsvc, &nse->nsvc, list) {
-		remote = gprs_ns2_ip_vc_sockaddr(nsvc);
+		remote = gprs_ns2_ip_vc_remote(nsvc);
 		/* all nsvc in NSE should be IP/UDP nsvc */
 		OSMO_ASSERT(remote);
 
@@ -556,7 +556,7 @@
 	}
 
 	llist_for_each_entry_safe(nsvc, tmp, &nse->nsvc, list) {
-		remote = gprs_ns2_ip_vc_sockaddr(nsvc);
+		remote = gprs_ns2_ip_vc_remote(nsvc);
 		/* all nsvc in NSE should be IP/UDP nsvc */
 		OSMO_ASSERT(remote);
 		if (osmo_sockaddr_cmp(&sa, remote))
diff --git a/src/gb/gprs_ns2_udp.c b/src/gb/gprs_ns2_udp.c
index 9aca80b..e689118 100644
--- a/src/gb/gprs_ns2_udp.c
+++ b/src/gb/gprs_ns2_udp.c
@@ -396,7 +396,7 @@
 /*! Return the socket address of the remote peer of a NS-VC.
  *  \param[in] nsvc NS-VC whose remote peer we want to know
  *  \return address of the remote peer; NULL in case of error */
-const struct osmo_sockaddr *gprs_ns2_ip_vc_sockaddr(struct gprs_ns2_vc *nsvc)
+const struct osmo_sockaddr *gprs_ns2_ip_vc_remote(struct gprs_ns2_vc *nsvc)
 {
 	struct priv_vc *priv;
 
diff --git a/src/gb/gprs_ns2_vty.c b/src/gb/gprs_ns2_vty.c
index 92c0095..a457361 100644
--- a/src/gb/gprs_ns2_vty.c
+++ b/src/gb/gprs_ns2_vty.c
@@ -251,7 +251,7 @@
 
 	switch (nsvc->ll) {
 	case GPRS_NS_LL_UDP: {
-		sockaddr = gprs_ns2_ip_vc_sockaddr(nsvc);
+		sockaddr = gprs_ns2_ip_vc_remote(nsvc);
 		if (!sockaddr) {
 			vty_out(vty, "unknown");
 			break;
diff --git a/src/gb/libosmogb.map b/src/gb/libosmogb.map
index a185470..ee8651e 100644
--- a/src/gb/libosmogb.map
+++ b/src/gb/libosmogb.map
@@ -93,7 +93,7 @@
 gprs_ns2_ip_connect2;
 gprs_ns2_ip_connect_inactive;
 gprs_ns2_ip_connect_sns;
-gprs_ns2_ip_vc_sockaddr;
+gprs_ns2_ip_vc_remote;
 gprs_ns2_is_frgre_bind;
 gprs_ns2_is_ip_bind;
 gprs_ns2_ll_str;
