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

    Bypass At&t fiber BGW210-700

    Scheduled Pinned Locked Moved General pfSense Questions
    103 Posts 11 Posters 24.7k 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.
    • sherpagoodnessS
      sherpagoodness
      last edited by

      this is how your file should be - just replace with your modems mac address

      #!/bin/sh
      set -e
      
      ONT_IF='igb0'
      RG_IF='igb1'
      RG_ETHER_ADDR='********LEAVE Apostrophes****************'
      OPNSENSE='no'
      LOG=/var/log/pfatt.log
      
      getTimestamp(){
          echo `date "+%Y-%m-%d %H:%M:%S :: [pfatt.sh] ::"`
      }
      
      {
          echo "$(getTimestamp) pfSense + AT&T U-verse Residential Gateway for true bridge mode"
          echo "$(getTimestamp) Configuration: "
          echo "$(getTimestamp)        ONT_IF: $ONT_IF"
          echo "$(getTimestamp)         RG_IF: $RG_IF"
          echo "$(getTimestamp) RG_ETHER_ADDR: $RG_ETHER_ADDR"
          echo "$(getTimestamp)      OPNSENSE: $OPNSENSE"
      
          echo -n "$(getTimestamp) loading netgraph kernel modules... "
          /sbin/kldload -nq ng_etf
          echo "OK!"
      
          if [ ${OPNSENSE} != 'yes' ]; then
              echo -n "$(getTimestamp) attaching interfaces to ng_ether... "
              /usr/local/bin/php -r "pfSense_ngctl_attach('.', '$ONT_IF');" 
              /usr/local/bin/php -r "pfSense_ngctl_attach('.', '$RG_IF');"
              echo "OK!"
          fi 
      
          echo "$(getTimestamp) building netgraph nodes..."
      
          echo -n "$(getTimestamp)   creating ng_one2many... "
          /usr/sbin/ngctl mkpeer $ONT_IF: one2many lower one
          /usr/sbin/ngctl name $ONT_IF:lower o2m
          echo "OK!"
      
          echo -n "$(getTimestamp)   creating vlan node and interface... "
          /usr/sbin/ngctl mkpeer o2m: vlan many0 downstream
          /usr/sbin/ngctl name o2m:many0 vlan0
          /usr/sbin/ngctl mkpeer vlan0: eiface vlan0 ether
      
          /usr/sbin/ngctl msg vlan0: 'addfilter { vlan=0 hook="vlan0" }'
          /usr/sbin/ngctl msg ngeth0: set $RG_ETHER_ADDR
          echo "OK!"
      
          echo -n "$(getTimestamp)   defining etf for $ONT_IF (ONT)... "
          /usr/sbin/ngctl mkpeer o2m: etf many1 downstream
          /usr/sbin/ngctl name o2m:many1 waneapfilter
          /usr/sbin/ngctl connect waneapfilter: $ONT_IF: nomatch upper
          echo "OK!"
      
          echo -n "$(getTimestamp)   defining etf for $RG_IF (RG)... "
          /usr/sbin/ngctl mkpeer $RG_IF: etf lower downstream
          /usr/sbin/ngctl name $RG_IF:lower laneapfilter
          /usr/sbin/ngctl connect laneapfilter: $RG_IF: nomatch upper
          echo "OK!"
      
          echo -n "$(getTimestamp)   bridging etf for $ONT_IF <-> $RG_IF... "
          /usr/sbin/ngctl connect waneapfilter: laneapfilter: eapout eapout
          echo "OK!"
      
          echo -n "$(getTimestamp)   defining filters for EAP traffic... "
          /usr/sbin/ngctl msg waneapfilter: 'setfilter { matchhook="eapout" ethertype=0x888e }'
          /usr/sbin/ngctl msg laneapfilter: 'setfilter { matchhook="eapout" ethertype=0x888e }'
          echo "OK!"
      
          echo -n "$(getTimestamp)   enabling one2many links... "
          /usr/sbin/ngctl msg o2m: setconfig "{ xmitAlg=2 failAlg=1 enabledLinks=[ 1 1 ] }"
          echo "OK!"
      
          echo -n "$(getTimestamp)   removing waneapfilter:nomatch hook... "
          /usr/sbin/ngctl rmhook waneapfilter: nomatch
          echo "OK!"
      
          echo -n "$(getTimestamp) enabling $RG_IF interface... "
          /sbin/ifconfig $RG_IF up
          echo "OK!"
      
          echo -n "$(getTimestamp) enabling $ONT_IF interface... "
          /sbin/ifconfig $ONT_IF up
          echo "OK!"
      
          echo -n "$(getTimestamp) enabling promiscuous mode on $RG_IF... "
          /sbin/ifconfig $RG_IF promisc
          echo "OK!"
      
          echo -n "$(getTimestamp) enabling promiscuous mode on $ONT_IF... "
          /sbin/ifconfig $ONT_IF promisc
          echo "OK!"
      
          echo "$(getTimestamp) ngeth0 should now be available to configure as your pfSense WAN"
          echo "$(getTimestamp) done!"
      } >> $LOG
      
      P 1 Reply Last reply Reply Quote 0
      • P
        Phantom_Stage
        last edited by

        (1) I copied PFatt.sh as raw file to notepad.
        (2) Made the changes as noted saving changes using semi colon " at beginning and at end of name to ensure it save as correct file type .sh
        (3) used command prompt in pfsense webgui to upload to tmp directory.
        (4) SSH into pfsense using putty to create directory root/bin.
        (5) used file editor in pfsense to copy file to root/bin.

        1 Reply Last reply Reply Quote 0
        • stephenw10S
          stephenw10 Netgate Administrator
          last edited by

          Notepad can break stuff completely. I recommend Notepad++ in Windows, though it's been a few years since I last used it.

          If you open the file in Diag > Edit file does it looks correct?

          Steve

          1 Reply Last reply Reply Quote 0
          • P
            Phantom_Stage
            last edited by

            It looks correct from what I can tell...what if I copied it directly to the pfsense file edit made the changes there then save it as file type .sh? Does that eliminate the possibility of coruption?

            1 Reply Last reply Reply Quote 0
            • stephenw10S
              stephenw10 Netgate Administrator
              last edited by stephenw10

              Yes. Or just pull it directly into pfSense and then edit it in the webgui:

              Steve

              1 Reply Last reply Reply Quote 0
              • P
                Phantom_Stage
                last edited by

                @stephenw10 said in Bypass At&t fiber BGW210-700:

                /root/bin/pfatt.sh

                Did it got the same syntax error.

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  Sorry wrong file path there. Try this:

                  [2.5.0-DEVELOPMENT][admin@fw321.stevew.lan]/root: fetch -o /root/bin https://raw.githubusercontent.com/aus/pfatt/master/bin/pfatt.sh
                  /root/bin/pfatt.sh                                    3309  B   11 MBps    00s
                  
                  1 Reply Last reply Reply Quote 0
                  • P
                    Phantom_Stage
                    last edited by Phantom_Stage

                    now I am getting the following error...kldload: an error occurred while loading the module. Please check dmesg(8) for more details. It appears I might be out of luck.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      Can you load the module manually?:

                      kldload ng_etf.ko
                      
                      1 Reply Last reply Reply Quote 0
                      • P
                        Phantom_Stage
                        last edited by Phantom_Stage

                        nope same error...can I download ng_etf.ko to /boot/kernel directly.

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          Hmm, and you got that module from the repo using pkg install?

                          P 1 Reply Last reply Reply Quote 0
                          • P
                            Phantom_Stage @stephenw10
                            last edited by

                            @stephenw10 it says the pkg is installed gonna delete it and reinstall now.

                            1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator
                              last edited by

                              That sort of error can often be because the module is wrong, from the wrong FreeBSD version or wrong architecture, but that cannot be the case if you installed it from the repo.

                              1 Reply Last reply Reply Quote 0
                              • P
                                Phantom_Stage
                                last edited by Phantom_Stage

                                ok ran the pkg installer again it says installed but when I look in /boot/kernel I don't see the ng_etf-kmod file.
                                the original file was from https://github.com/aus/pfatt/blob/master/bin/ng_etf.ko

                                1 Reply Last reply Reply Quote 0
                                • stephenw10S
                                  stephenw10 Netgate Administrator
                                  last edited by

                                  It installs it to /boot/modules. It installs and load fine or me here.

                                  What hardware are you running this on?

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    Phantom_Stage
                                    last edited by Phantom_Stage

                                    It's a Qotom I5 mini pc...gonna try my original pfsense computer build now just copied over the current xml config.

                                    1 Reply Last reply Reply Quote 0
                                    • stephenw10S
                                      stephenw10 Netgate Administrator
                                      last edited by

                                      Can you show the exact command you're using and the error you're seeing?

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        Phantom_Stage
                                        last edited by Phantom_Stage

                                        pkg install ng_etf-kmod-0.1 I don't get an error on the install it says it completed...maybe my expectation is wrong. I am assuming (which I know I should not) that the pkg installs all the variables and I simply have to connect the att gateway to the wan port on the pfsense box and the att ont to the lan side of the pfsense box and reboot.

                                        1 Reply Last reply Reply Quote 0
                                        • stephenw10S
                                          stephenw10 Netgate Administrator
                                          last edited by

                                          Right and I assume you see the install happen after that rather than an error? The more info you give us the better we can help you here.

                                          Please give the full console output of you trying to load that module and the error it returns.

                                          Steve

                                          1 Reply Last reply Reply Quote 0
                                          • P
                                            Phantom_Stage
                                            last edited by Phantom_Stage

                                            using the shellcmd configuration Shellcmd Type earlyshellcmd...do I need to put

                                            the full <earlyshellcmd>/root/bin/pfatt.sh</earlyshellcmd>

                                            or simply /root/bin/pfatt.sh

                                            also where do I find those logs you mentioned?

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