diff --git a/routingtable/contributing_asn_list.go b/routingtable/contributing_asn_list.go
index dd6b9885c14bc424e25b8abb910d43a410140fab..500b79b61d66825b6f0e9c21d3508adc970c36e3 100644
--- a/routingtable/contributing_asn_list.go
+++ b/routingtable/contributing_asn_list.go
@@ -75,8 +75,8 @@ func (c *ContributingASNs) Remove(asn uint32) {
 
 // IsContributingASN checks if  a given ASN is part of the contributing ASNs
 func (c *ContributingASNs) IsContributingASN(asn uint32) bool {
-	c.contributingASNsLock.Lock()
-	defer c.contributingASNsLock.Unlock()
+	c.contributingASNsLock.RLock()
+	defer c.contributingASNsLock.RUnlock()
 
 	for _, cASN := range c.contributingASNs {
 		if asn == cASN.asn {