Register the Naming Service with an Implementation Repository using the POA name "NameService". So for example:
tao_imr add NameService -c "Naming_Service -ORBUseIMR 1"
And then an IOR can be created by:
tao_imr ior NameService
The above commands depend on multicast (since the commands are shorter and easier put in documents). You might need to add "-ORBInitRef ImplRepoService=..." for a more robust solution.
The Naming Service in TAO contains one persistant POA named "NameService". If -ORBUseIMR 1 is passed to it, it will communicate with the ImR as any other persistent POA does. Also, the Naming Service recognizes the INS object key "NameService". This allows you to use the "tao_imr ior" command to create corbaloc IORs.
NameService was chosen because resolve_initial_references () uses that name. And that allows us to do interesting things with ORBDefaultInitRef (as shown in the Use of -ORBDefaultInitRef with the ImR section).