From: Wojtek Dudys on
Hi there,

I'm looking for help in hacking FreeBSD used as a control plane on
Juniper routers.

It is possible to install FreeBSD on ordinary PC or vmware/qemu and
then Junos (Juniper Operating System that lays on top of FreeBSD) and
have cheap training environment. It is called Olive.

The main problem I'm facing now is interface naming. Junos uses
interface names like ge-0/0/0 for first gigabit interface, ge-0/0/1
for second and so on. FreeBSD in the other hand uses em0, em1 (for
e1000 NICs). Unfortunately Junos depends on interface names and does
not allow to configure some of the features if the interface name is
not correct (for example VRRP).

I found that on FreeBSD 7.x you can use ifconfig to change interface
names (most of the times people install junos on FreeBSD 4.1).

I managed to install junos 9.6 on FreeBSD 7.2 (with some problems) and
find out that after installing junos all interface settings are
erased. Ifconfig is replaced with the junos version of ifconfig and of
course it does not allow to change interface name.

I tried to copy oryginal ifconfig binary back to the machine and try
to use it but with no luck. Junos does not allow to run binaries that
are not signed. I got "authentication error".

quote from some juniper pdf
"Juniper Networks routing platforms run only binaries supplied by
Juniper Networks. Each JUNOS software image includes a digitally
signed manifest of executables, which are registered with the system
only if the signature can be validated. JUNOS software will not
execute any binary without a registered fingerprint.This feature
protects the system against unauthorized software and activity that
might compromise the integrity of your router."

I reached a dead end.

Maybe somebody knows a way to change device/interface name in some
other way that junos will not override?

I believe it would be possible to modify e1000 driver source code and
recompile kernel but it is far beyond my skills.

A lot of people in juniper/netoworking community would appreciate if
somebody with FreeBSD experience would spend some time on this topic
and got around it.