Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Problem when install nanobsd 4GB on Watchguard FB III [SOLVED !!!]

    Scheduled Pinned Locked Moved Problems Installing or Upgrading pfSense Software
    8 Posts 2 Posters 12.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      Antonix
      last edited by

      Hi,

      I have some trouble to install a nanobsd 4GB on my Firebox III.

      I have this:

      –-
      Psec: Initialized Security Association Processing.
      ad0: FAILURE - SETFEATURES SET TRANSFER MODE status=51 <ready,dsc,error>error=4<
      ABORTED>
      ad0: 7MB < VER4.64> at ata0-master BIOSPIO
      ad1: WARNING - SET_MULTI taskqueue timeout - completing request directly
      ad1: 3927MB < 20070308> at ata0-slave PIO4
      ad0: FAILURE - SETFEATURES SET TRANSFER MODE status=51 <ready,dsc,error>error=4<
      ABORTED>
      ad0: TIMEOUT - READ retrying (1 retry left) LBA=16
      ad1: WARNING - SET_MULTI freeing taskqueue zombie request
      ad1: WARNING - READ taskqueue timeout - completing request directly
      ad0: FAILURE - SETFEATURES SET TRANSFER MODE status=51 <ready,dsc,error>error=4<
      ABORTED>
      ad0: TIMEOUT - READ retrying (0 retries left) LBA=16

      Fatal trap 12: page fault while in kernel mode
      fault virtual address   = 0xc25fa000
      fault code              = supervisor write, page not present
      instruction pointer     = 0x20:0xc0565601
      stack pointer           = 0x28:0xc2355c2c
      frame pointer           = 0x28:0xc2355c58
      code segment            = base 0x0, limit 0xfffff, type 0x1b
                             = DPL 0, pres 1, def32 1, gran 1
      processor eflags        = interrupt enabled, resume, IOPL = 0
      current process         = 27 (irq14: ata0)
      trap number             = 12
      panic: page fault
      Uptime: 51s
      Cannot dump. No dump device defined.
      Automatic reboot in 15 seconds - press a key on the console to abort
      --> Press a key on the console to reboot,
      --> or switch off the system now.
      Rebooting...
      ---</ready,dsc,error></ready,dsc,error></ready,dsc,error>

      1 Reply Last reply Reply Quote 0
      • dotdashD
        dotdash
        last edited by

        Yeah, FreeBSD doesn't run on the FB III.
        Search the m0n0wall forum for more details and notes on how to roll a 4.11 kernel that will allow you to run m0n0 1.2x. I've heard 6.4 (m0n0 1.3) will run on it, but I haven't tested. Last time I tried a RC of 8.0 it didn't work either. Someone was hacking up some code for the screen also, but I haven't heard anything in a while.
        My advice is to scrap it, but if you make any progress, please share.

        1 Reply Last reply Reply Quote 0
        • A
          Antonix
          last edited by

          @dotdash:

          Yeah, FreeBSD doesn't run on the FB III.

          Very false !!!

          I have installed the nanobsd 4GB at first boot but now I have this problem. I think there is a problem with controller or bios.

          I have another Firebox model II and works very well with pfsense 1.2.2 embedded and I think also with the complete version.

          1 Reply Last reply Reply Quote 0
          • A
            Antonix
            last edited by

            Hi,

            now I have installed successfully 1.2.3 nanobsd 4GB in a 4GB DOM with UDMA support and all works well.
            Only one problem is the network interfaces of Firebox III. There are 3 x Macronix 98715AEC-C 10/100BaseTX NIC interfaces.
            The bsd drivers don't read mac addresses correctly, if I run if config I have this:

            dc0: flags=8943 <up,broadcast,running,promisc,simplex,multicast>metric 0 mtu 150
            0
                   options=8 <vlan_mtu>ether 00:00:00:00:00:00
                   inet6 fe80::7831:833c:16db:3d3%dc0 prefixlen 64 scopeid 0x1
                   media: Ethernet autoselect (none)
                   status: no carrier
            dc1: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
                   options=8 <vlan_mtu>ether 00:00:00:00:00:00
                   inet 192.168.0.98 netmask 0xffffff00 broadcast 192.168.0.255
                   inet6 fe80::7831:833c:16db:3d3%dc1 prefixlen 64 scopeid 0x2
                   media: Ethernet autoselect (none)
                   status: no carrier
            dc2: flags=8802 <broadcast,simplex,multicast>metric 0 mtu 1500
                   options=8 <vlan_mtu>ether 00:00:00:00:00:00
                   media: Ethernet autoselect
                   status: no carrier

            The mac addresses are all zeros. If I run
            ifconfig dc0 ether 00:11:22:33:44:55
            i can set the mac address but this is only a temporary setting.
            If I restart OS the mac addresses return alla zeros.
            I have post this problem to FreeBSD community but they say that don't can help me.
            I have searched on google and I have found that this is a Macronix driver problem.

            How can I solve this problem ? Can I store ifconfig settings in a pfsense config file ?
            Can I recompile the kernel with another working driver ?

            Thanks in advance.</vlan_mtu></broadcast,simplex,multicast></vlan_mtu></up,broadcast,running,simplex,multicast></vlan_mtu></up,broadcast,running,promisc,simplex,multicast>

            1 Reply Last reply Reply Quote 0
            • A
              Antonix
              last edited by

              Hi,

              I have modified the /etc/inc/interfaces.inc file and I have some solutions.

              This is the original procedure in the interfaces.inc file:
              _function interfaces_lan_configure() {
              global $config, $g;

              $lancfg = $config['interfaces']['lan'];

              /* if user has removed ip address, clear it*/
              if($lancfg['ipaddr'] == "")
              mwexec("/sbin/ifconfig {$lancfg['if']} delete");

              /* wireless configuration? */
              if (is_array($lancfg['wireless']))
              interfaces_wireless_configure($lancfg['if'], $lancfg['wireless']);

              / MAC spoofing? /
              if ($lancfg['spoofmac']) {
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($lancfg['spoofmac']));
              } else {
              $mac = get_interface_mac_address($lancfg['if']);
              if($mac == "ff:ff:ff:ff:ff:ff") {
              /
                this is not a valid mac address.  generate a
              *  temporary mac address so the machine can get online.
              /
              echo "Generating new MAC address.";
              $random_mac = generate_random_mac_address();
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($random_mac));
              $lancfg['spoofmac'] = $random_mac;
              write_config();
              file_notice("MAC Address altered", "The INVALID MAC address (ff:ff:ff:ff:ff:ff) on interface {$lancfg['if']} has been automatically replaced with {$random_mac}", "Interfaces");
              }
              }

              /* bridged? */
              if ($lancfg['bridge']) {
              setup_bridge();
              }

              /* media */
              if ($lancfg['media'] || $lancfg['mediaopt']) {
              $cmd = "/sbin/ifconfig " . escapeshellarg($lancfg['if']);
              if ($lancfg['media'])
              $cmd .= " media " . escapeshellarg($lancfg['media']);
              if ($lancfg['mediaopt'])
              $cmd .= " mediaopt " . escapeshellarg($lancfg['mediaopt']);
              mwexec($cmd);
              }

              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) . " " .
              escapeshellarg($lancfg['ipaddr'] . "/" . $lancfg['subnet']));

              if (!$g['booting']) {
              /* make new hosts file */
              system_hosts_generate();

              /* reconfigure static routes (kernel may have deleted them) */
              system_routing_configure();

              /* set the reload filter dity flag */
              touch("{$g['tmp_path']}/filter_dirty");

              /* reload IPsec tunnels */
              vpn_ipsec_configure();

              /* reload dhcpd (gateway may have changed) */
              services_dhcpd_configure();

              /* reload dnsmasq */
              services_dnsmasq_configure();

              /* reload captive portal */
              captiveportal_configure();

              }

              return 0;
              }_

              **This is my first modification for generate a random mac address for lan NIC with 00:00:00:00:00:00 mac address :

              /* MAC spoofing? /
              if ($lancfg['spoofmac']) {
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($lancfg['spoofmac']));
              } else {
              $mac = get_interface_mac_address($lancfg['if']);
              if($mac == "00:00:00:00:00:00") {
              /
                this is not a valid mac address.  generate a
              *  temporary mac address so the machine can get online.
              /
              echo "Generating new MAC address.";
              $random_mac = generate_random_mac_address();
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($random_mac));
              $lancfg['spoofmac'] = $random_mac;
              write_config();
              file_notice("MAC Address altered", "The INVALID MAC address (00:00:00:00:00:00) on interface {$lancfg['if']} has been automatically replaced with {$random_mac}", "Interfaces");
              }
              }
              *

              **This is my second modification for set a fixed mac address for lan NIC with 00:00:00:00:00:00 mac address:

              /* MAC spoofing? /
              if ($lancfg['spoofmac']) {
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($lancfg['spoofmac']));
              } else {
              $mac = get_interface_mac_address($lancfg['if']);
              if($mac == "00:00:00:00:00:00") {
              echo "Setting fixed MAC address.";
              $fixed_mac = "00:00:00:00:00:11";
              mwexec("/sbin/ifconfig " . escapeshellarg($lancfg['if']) .
              " link " . escapeshellarg($fixed_mac));
              $lancfg['spoofmac'] = $fixed_mac;
              write_config();
              }
              }
              *

              Now the mac adresses can be generated randomly or fixed and the NICs works correctly.
              You can choose my first or second modification and apply this to interfaces.inc file by pfsense web gui -> diagnostics -> edit file ->
              Save/Load from path: /etc/inc/interfaces.inc

              ;) ;) ;)

              1 Reply Last reply Reply Quote 0
              • dotdashD
                dotdash
                last edited by

                @Antonix:

                @dotdash:

                Yeah, FreeBSD doesn't run on the FB III.

                Very false !!!

                I have installed the nanobsd 4GB at first boot but now I have this problem. I think there is a problem with controller or bios.

                I have another Firebox model II and works very well with pfsense 1.2.2 embedded and I think also with the complete version.

                I'm glad you're making progress on this, but try not to be a jerk about it.
                I've tried stock FreeBSD 4.11, 6.2, 7.0, and one of the 8 RC's on a Firebox III.
                At least when you load the OS on a laptop HDD, set the onboard flash to slave- they all failed to boot. They wouldn't get past the point where it queried the onboard flash drive. See here for details- http://old.nabble.com/Re:-Running-FreeBSD-on-Firebox-III-td15789848.html
                I heard reports from another user that 6.4 was working, which I mentioned, and 7.2 may work as well.
                The FB II, is a different board and didn't have the problem with the ATA controller.
                I haven't had interest or spare time to test my FB III with newer versions, but I may try again with the nano version.
                For the benefit of others with old FB III's, what was your procedure?
                I'm assuming you imaged the dom on another machine and connected it to the on-board IDE of the FB III after setting the jumper to slave for the on-board flash. Did you change any settings in the BIOS?
                When I used m0n0 on my FB, I modified the driver (see the nabble link) to correctly pull the MACs, but another option is to edit the config.xml to set the MACs.

                1 Reply Last reply Reply Quote 0
                • A
                  Antonix
                  last edited by

                  Hi dotnash,

                  this is the procedure I have used:

                  1) Connect an external CDROM drive to 44 pin ata controller as a slave device.
                  2) Boot from CDROM with Ultimate Boot Cd and remove the on board flash partitions.
                  3) Connect a DOM or a CF to PC via USB and trasfer a nanobsd 4GB image with phydiskwrite.
                  4) Connect the DOM or CF to 44pin ata controller and set the device as a master.
                  5) Boot and configure pfsense with Teraterm from serial console.
                  6) Apply my modification to interfaces.inc file as explain in my previous post.
                  7) My DOM have a DMA support and I have set DMA from bios and in the loader.conf file

                  Now I'm searching for procedure to work with front LED bars. ;)

                  1 Reply Last reply Reply Quote 0
                  • dotdashD
                    dotdash
                    last edited by

                    Somebody going by the name of 'jimmy' was working on some LED code, but I haven't heard any updates.
                    http://forum.pfsense.org/index.php/topic,14315.0.html

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post
                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.