<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    I'm curious about the "vm" in your note Bill.<br>
    <br>
    <br>
    <br>
    On 02/12/2011 07:47 PM, Bill V WA7NWP wrote:
    <blockquote
      cite="mid:AANLkTinfg1nML5WE-owzECwjZteYY1JzdRHcK3jWOXew@mail.gmail.com"
      type="cite">
      <pre wrap="">I'm having some mixed success moving to the new (to me) TUN0 scheme
for connecting the JNOS2 VM with the Linux networking stack.   I'm
curious how other folks are dealing with this.
</pre>
    </blockquote>
    I have not run a "Virtual Machine" to host jnos here, only
    straight-up Linux of several varieties.  Still, here is what has
    worked well for me for the past couple years -- a script named
    "stack.up"<br>
    ==================================================<br>
    #!/bin/sh<br>
    # This script prepares the host stack to support traffic from JNOS.<br>
    # K8RRA 2/20/09<br>
    #<br>
    echo "1" > /proc/sys/net/ipv4/ip_forward<br>
    if [ -a /dev/ttyS0 ];   then chmod o+rw /dev/ttyS0;   fi<br>
    if [ -a /dev/ttyS1 ];   then chmod o+rw /dev/ttyS1;   fi<br>
    if [ -a /dev/ttyUSB0 ]; then chmod o+rw /dev/ttyUSB0; fi<br>
    #<br>
    ifconfig tun0 192.168.1.11 pointopoint 44.102.132.20 mtu 1500 up<br>
    route add -host 44.102.132.20 dev tun0 irtt 1001<br>
    route add -net 44.0.0.0 netmask 255.0.0.0 dev tun0 irtt 11003<br>
    #<br>
    exit 0<br>
    #<br>
    # End of script<br>
    ==================================================<br>
    <br>
    <blockquote
      cite="mid:AANLkTinfg1nML5WE-owzECwjZteYY1JzdRHcK3jWOXew@mail.gmail.com"
      type="cite">
      <pre wrap="">
I'm starting with Maiko's example setup doing roughly this:

-------------------------------------------
# Create a network interface. This allows us to talk to the linux
# box on which JNOS is running - and in turn - to the internet.
#
attach tun tun0 1500 0
#
ifconfig tun0 ipaddress 192.168.27.12
ifconfig tun0 netmask 255.255.255.0
ifconfig tun0 mtu 1500
#
# Give it a chance to come up
#
pause 1
#
# JNOS creates the TUN device, so JNOS needs to do some post configuration,
# by shelling out to the linux command line and running 'ifconfig' command.
shell ifconfig tun0 192.168.27.33 pointopoint 192.168.27.12 mtu 1500 up
</pre>
    </blockquote>
    Instead of "shell ifconfig ..." at this point I use "shell
    ./bin/stack.up".<br>
    <br>
    <blockquote
      cite="mid:AANLkTinfg1nML5WE-owzECwjZteYY1JzdRHcK3jWOXew@mail.gmail.com"
      type="cite">
      <pre wrap="">-----------------------------------

It appears the JNOS startup creates the TUN0 interface, which is then
configured back in the linux world with the shell ifconfig command.

My question is, where you doing the other operations?
</pre>
    </blockquote>
    Commentary:<br>
    <ol>
      <li>My platform is Fedora.  Other distros may differ slightly.  I
        have never needed a specific modprobe anywhere.<br>
      </li>
      <li>For my case, the pointopoint uses the host and jnos IP
        directly -- My LAN does pass foreign IP addresses so I can
        safely forgo the independent IPs shown in your example.</li>
      <li>I have seen the route across tun0 to the jnos host appear
        magically after the ifconfig.  Check the route table on the host
        after starting jnos, if there are duplicate route statements,
        you may safely remove the one in the script.<br>
      </li>
      <li>Rather than ARP, I prefer to add a static route statement only
        at any LAN host I desire to have access to jnos.  At the bridge
        and a couple hosts I add "route add -net 44.0.0.0 netmask
        255.0.0.0 gw 192.168.1.11 irtt 11000" to the boot sequence.</li>
      <li>Setting permission for others to use the tty ports includes a
        test to insure the port does exist.  Sometimes it does not, and
        I did not like the error message when the "chmod ..." failed.</li>
      <li>I find the "echo ..." statement in this script to be a more
        certain location than other places.</li>
      <li>If you want [need?] you can create a negative image of this
        script to un-do all the settings this script does and call it
        from "onexit.nos" script.  Mine is named "stack.down".</li>
    </ol>
    This is only one way to skin the cat.  There are more...<br>
    <br>
    <blockquote
      cite="mid:AANLkTinfg1nML5WE-owzECwjZteYY1JzdRHcK3jWOXew@mail.gmail.com"
      type="cite">
      <pre wrap="">
Apparently also needed is:

 /bin/modprobe tun
 echo "1" > /proc/.../enable_forwarding

Maybe a route add for the other packets on the LAN to get them
forwarded through the linux stack to JNOS.

And finally, so the Linux box responds to arp requests for the JNOS box.
# Proxy ARP for jnos2 port of local LAN
# $ARP -s 192.168.27.12 00:0d:60:29:56:bb pub

???

Or maybe the TUN scheme isn't like the old serial port forwarding and
we don't need the proxy arp?

Thanks - I've very close to being back with JNOS - at least on the
AXUPD world - tonight.

Bill - WA7NWP

_______________________________________________
nos-bbs mailing list
<a class="moz-txt-link-abbreviated" href="mailto:nos-bbs@tapr.org">nos-bbs@tapr.org</a>
<a class="moz-txt-link-freetext" href="https://www.tapr.org/cgi-bin/mailman/listinfo/nos-bbs">https://www.tapr.org/cgi-bin/mailman/listinfo/nos-bbs</a>

</pre>
    </blockquote>
    May you not find the water too muddy.<br>
    Skip<br>
  </body>
</html>