diff --git a/lib/refrepo/valid/network.rb b/lib/refrepo/valid/network.rb
index cee6880c65305be239891869cfa7fcd8e8df7cc5..31004621ed952c64e6e87fc658e1a0b8b403df4d 100644
--- a/lib/refrepo/valid/network.rb
+++ b/lib/refrepo/valid/network.rb
@@ -15,12 +15,16 @@ def check_network_description(options)
   options[:sites].each do |site|
     puts "Checking #{site}..."
 
-    # get list of network equipments and nodes
+    # get list of network equipments, nodes and server
     neteqs = []
+    servers = []
     nodes = []
     Dir::glob("data/grid5000/sites/#{site}/network_equipments/*.json").each do |f|
       neteqs << JSON::parse(IO::read(f))
     end
+    Dir::glob("data/grid5000/sites/#{site}/servers/*.json").each do |f|
+      servers << JSON::parse(IO::read(f))
+    end
     Dir::glob("data/grid5000/sites/#{site}/clusters/*/nodes/*.json").each do |f|
       nodes << JSON::parse(IO::read(f))
     end
@@ -49,6 +53,16 @@ def check_network_description(options)
       end
     end
 
+    # we select NFS and group_storage servers
+    servers.select{|s| s.has_key?('group_storage') || (s.has_key?('alias')  && s['alias'].is_a?(Array) && s['alias'].include?('nfs'))}.each do |s|
+      p s['alias']
+      netnodes << {
+        'kind' => 'storage',
+        'uid' => s['uid'],
+        'nickname' => s['alias'].select{|v| v == "nfs" or v.include?('storage')}.join(' ')
+      }
+    end
+
     neteqs.each do |eq|
       netnodes << {
         'kind' => eq['kind'],
@@ -335,7 +349,7 @@ def generate_dot(netnodes, links, site)
     "100G" => 2.5,
     "2x100G" => 3}
 
-  colors = {"router" => "indianred",
+  colors = {"router" => "lightpink",
     "switch" => "gold",
     "cluster" => "aquamarine1"}