En practicamente todos los SO puedes asignarle dos IP's a una tarjeta de red, de esta forma conseguirias tu objetivo con una ip para internet y otra para tu red privada. El problema es que si las ip's que te da tu proveedor son dinamicas, es decir usas DHCP, esto ya no se puede hacer, por lo menos en windows no, por que unicamente te dejara asignar ip's a tu tarjeta mediante dhcp.
Una solucion un poco mas bestia seria poner otra tarjeta de red mas en cada uno de tus equipos y configurarlas con ip's privadas para poder tener tu red local. De esta forma podrias montar una red local para compartir archivos, impresoras, etc...
Otra solucion es establecer una red privada virtual pero ya seria bastante mas complicado, o si no tambien podrias manipular las tablas de enrutamiento de tus pcs pero tendrias que modificarlas cada vez que te cambiase la ip.
Otra idea mas que se me ocurre seria utilizar la configuracion alternativa del protocolo tcp/ip, tendrias que ir a la pestaña de configuracion alternativa de las propiedades de tcp/ip de tu tarjeta de red. De esta froma establecerias una configuracion para cuando tu equipo no pudiese obtener una por DHCP, asi no te haria falta cambiar las configuraciones de tus equipos para que se puedan ver por la red local, lo unico que tendrias que hacer es desconectar el modem para obligar a windows a utilizar la configuracion alternativa de forma que tus equipos formaran una red local. Esto esta disponible en Xp en otros no lo se. Supongo que en linux se puede hacer pero ahora mismo no se como y ademas me parece que usas windows no?
Estas son solo algunas ideas que yo probaria... no estoy seguro de que sean exactamente asi pero probando...
Saludos, y suerte