diff --git a/lib/Makefile.am b/lib/Makefile.am
index 7576cc8..0268060 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -10,7 +10,7 @@
 	print_version.c checksum.c vector.c linklist.c vty.c command.c \
 	sockunion.c prefix.c thread.c if.c memory.c buffer.c table.c hash.c \
 	filter.c routemap.c distribute.c stream.c str.c log.c plist.c \
-	zclient.c sockopt.c smux.c md5.c keychain.c
+	zclient.c sockopt.c smux.c md5.c if_rmap.c keychain.c
 
 libzebra_a_DEPENDENCIES = @LIB_REGEX@
 
@@ -20,7 +20,7 @@
 	buffer.h command.h filter.h getopt.h hash.h if.h linklist.h log.h \
 	memory.h network.h prefix.h routemap.h distribute.h sockunion.h \
 	str.h stream.h table.h thread.h vector.h version.h vty.h zebra.h \
-	plist.h zclient.h sockopt.h smux.h md5-gnu.h keychain.h
+	plist.h zclient.h sockopt.h smux.h md5-gnu.h if_rmap.h keychain.h
 
 EXTRA_DIST = regex.c regex-gnu.h
 
diff --git a/ripngd/ripng_ifrmap.c b/lib/if_rmap.c
similarity index 95%
rename from ripngd/ripng_ifrmap.c
rename to lib/if_rmap.c
index d358690..4227102 100644
--- a/ripngd/ripng_ifrmap.c
+++ b/lib/if_rmap.c
@@ -25,7 +25,7 @@
 #include "command.h"
 #include "memory.h"
 #include "if.h"
-#include "ripng_ifrmap.h"
+#include "if_rmap.h"
 
 struct hash *ifrmaphash;
 
@@ -194,8 +194,8 @@
   return 1;
 }
 
-DEFUN (ripng_if_rmap,
-       ripng_if_rmap_cmd,
+DEFUN (if_rmap,
+       if_rmap_cmd,
        "route-map RMAP_NAME (in|out) IFNAME",
        "Route map set\n"
        "Route map name\n"
@@ -221,8 +221,8 @@
   return CMD_SUCCESS;
 }       
 
-DEFUN (no_ripng_if_rmap,
-       no_ripng_if_rmap_cmd,
+DEFUN (no_if_rmap,
+       no_if_rmap_cmd,
        "no route-map ROUTEMAP_NAME (in|out) IFNAME",
        NO_STR
        "Route map unset\n"
@@ -296,10 +296,11 @@
 }
 
 void
-if_rmap_init (void)
+if_rmap_init (int node)
 {
   ifrmaphash = hash_create (if_rmap_hash_make, if_rmap_hash_cmp);
-
-  install_element (RIPNG_NODE, &ripng_if_rmap_cmd);
-  install_element (RIPNG_NODE, &no_ripng_if_rmap_cmd);
+  if (node == RIPNG_NODE) {
+    install_element (RIPNG_NODE, &if_rmap_cmd);
+    install_element (RIPNG_NODE, &no_if_rmap_cmd);
+  }
 }
diff --git a/ripngd/ripng_ifrmap.h b/lib/if_rmap.h
similarity index 97%
rename from ripngd/ripng_ifrmap.h
rename to lib/if_rmap.h
index c8bc223..a9355ab 100644
--- a/ripngd/ripng_ifrmap.h
+++ b/lib/if_rmap.h
@@ -37,7 +37,7 @@
   char *routemap[IF_RMAP_MAX];
 };
 
-void if_rmap_init (void);
+void if_rmap_init (int);
 void if_rmap_reset (void);
 void if_rmap_hook_add (void (*) (struct if_rmap *));
 void if_rmap_hook_delete (void (*) (struct if_rmap *));
diff --git a/ripngd/Makefile.am b/ripngd/Makefile.am
index 90b8b65..2835aa2 100644
--- a/ripngd/Makefile.am
+++ b/ripngd/Makefile.am
@@ -9,10 +9,10 @@
 
 libripng_a_SOURCES = \
 	ripng_interface.c ripngd.c ripng_zebra.c ripng_route.c ripng_debug.c \
-	ripng_routemap.c ripng_ifrmap.c
+	ripng_routemap.c
 
 noinst_HEADERS = \
-	ripng_debug.h ripng_route.h ripngd.h ripng_ifrmap.h
+	ripng_debug.h ripng_route.h ripngd.h
 
 ripngd_SOURCES = \
 	ripng_main.c $(libripng_a_SOURCES)
diff --git a/ripngd/ripngd.c b/ripngd/ripngd.c
index d8c34e8..e7cefaf 100644
--- a/ripngd/ripngd.c
+++ b/ripngd/ripngd.c
@@ -37,11 +37,11 @@
 #include "distribute.h"
 #include "plist.h"
 #include "routemap.h"
+#include "if_rmap.h"
 
 #include "ripngd/ripngd.h"
 #include "ripngd/ripng_route.h"
 #include "ripngd/ripng_debug.h"
-#include "ripngd/ripng_ifrmap.h"
 
 #define min(a, b) ((a) < (b) ? (a) : (b))
 
@@ -2520,7 +2520,7 @@
   route_map_add_hook (ripng_routemap_update);
   route_map_delete_hook (ripng_routemap_update);
 
-  if_rmap_init ();
+  if_rmap_init (RIPNG_NODE);
   if_rmap_hook_add (ripng_if_rmap_update);
   if_rmap_hook_delete (ripng_if_rmap_update);
 }
diff --git a/vtysh/Makefile.am b/vtysh/Makefile.am
index e6e92f1..89156f9 100644
--- a/vtysh/Makefile.am
+++ b/vtysh/Makefile.am
@@ -16,9 +16,9 @@
 EXTRA_DIST = extract.pl vtysh.conf.sample
 
 rebuild4:
-	./extract.pl ../zebra/*.c ../ripd/*.c ../ospfd/*.c ../bgpd/*.c ../lib/keychain.c ../lib/routemap.c ../lib/filter.c ../lib/plist.c ../lib/distribute.c > vtysh_cmd.c
+	./extract.pl ../zebra/*.c ../ripd/*.c ../ospfd/*.c ../bgpd/*.c ../lib/keychain.c ../lib/routemap.c ../lib/filter.c ../lib/plist.c ../lib/distribute.c ../lib/if_rmap.c > vtysh_cmd.c
 
 rebuild:
-	./extract.pl ../zebra/*.c ../ripd/*.c ../ripngd/*.c ../ospfd/*.c ../ospf6d/*.c ../bgpd/*.c ../lib/keychain.c ../lib/routemap.c ../lib/filter.c ../lib/plist.c ../lib/distribute.c > vtysh_cmd.c
+	./extract.pl ../zebra/*.c ../ripd/*.c ../ripngd/*.c ../ospfd/*.c ../ospf6d/*.c ../bgpd/*.c ../lib/keychain.c ../lib/routemap.c ../lib/filter.c ../lib/plist.c ../lib/distribute.c ../lib/if_rmap.c > vtysh_cmd.c
 
 vtysh_cmd.c: rebuild
diff --git a/vtysh/extract.pl b/vtysh/extract.pl
index 4a49a62..ca88cf7 100755
--- a/vtysh/extract.pl
+++ b/vtysh/extract.pl
@@ -108,6 +108,9 @@
                  $protocol = "VTYSH_RIPD";
               }
            }
+           if ($file =~ /if_rmap.c/) {
+              $protocol = "VTYSH_RIPNGD";
+           }
         } else {
            ($protocol) = ($file =~ /\/([a-z0-9]+)/);
            $protocol = "VTYSH_" . uc $protocol;
