Yo es que uso el método de prueba y error 

 Debe ser algo muy parecido a eso, si eso prueba estos cambios a ver...  
Código:
 RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?dominio\.net [NC]
Rewriterule ^/(.+)/menu/(.+)/(.*)$ http://www.dominio.net/index.php?id=$1 [L]
RewriteCond %{HTTP_HOST} ^subdominio\.dominio\.net [NC]
Rewriterule ^/(.+)/menu/(.+)/(.*)$ http://subdominio.dominio.net/index.php?id=$1 [L]