• Recent
  • Unsolved
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
  • Recent
  • Unsolved
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

SVN 3080: NIC Registration

Scheduled Pinned Locked Moved Solved
Bug Reports
5
33
11.4k
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.
  • T
    Tom Elliott
    last edited by Mar 10, 2015, 10:21 PM

    Typos are perfectly fine, just as long as I can see them and correct them.

    I’m wondering, though, would it be better to assign all found mac’s that are connected with splice character that we already use?

    we have a function called parseMacList which uses a delimiter of | (pipe) symbol to break apart and find hosts. Using this same principle, if the returned string (base 64 decoded as needed) comes back with | I can explode it out from there and just add all the mac’s to the additional mac list of the relevant host.

    Example (I know I can do it, but i’m being particularly lazy today and possibly this week as both my wife and I are currently sick or something)

    00:12:34:56:78:01|23:45:67:89:01:23|45:67:89:01:23:45

    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

    Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

    Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

    1 Reply Last reply Reply Quote 0
    • T
      Tom Elliott
      last edited by Mar 10, 2015, 10:22 PM

      And I can see you already thought of that…

      Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

      1 Reply Last reply Reply Quote 0
      • C
        cspence Developer
        last edited by Mar 10, 2015, 10:23 PM

        [quote=“Tom Elliott, post: 43613, member: 7271”]And I can see you already thought of that…[/quote]

        I was about to say… 😄

        1 Reply Last reply Reply Quote 0
        • T
          Tom Elliott
          last edited by Mar 10, 2015, 10:23 PM

          I’ll build a function rather than code this into the individually requested files.

          I’ll have to adjust the service scripts so they no longer look for HWAddr in the fields, but I think it better to scan only for the mac addresses.

          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

          Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

          Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

          1 Reply Last reply Reply Quote 0
          • C
            cspence Developer
            last edited by Mar 10, 2015, 10:29 PM

            [quote=“Tom Elliott, post: 43616, member: 7271”]I’ll build a function rather than code this into the individually requested files.

            I’ll have to adjust the service scripts so they no longer look for HWAddr in the fields, but I think it better to scan only for the mac addresses.[/quote]

            Sounds better to me.

            1 Reply Last reply Reply Quote 0
            • T
              Tom Elliott
              last edited by Mar 10, 2015, 10:29 PM

              Oh, i do have a thought though.

              Using the generate our interfaces file on the fly method, I can add the e-polling capabilities of the kernel to use more proper methods of device management. This means not all devices will automatically have eth* names, but rather whatever the device is. Is there a simpler way without designating the specific devices to search for?

              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

              Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

              Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

              1 Reply Last reply Reply Quote 0
              • T
                Tom Elliott
                last edited by Mar 10, 2015, 10:39 PM

                I wonder
                [code]for macline in $(ip addr show | grep link/ether|awk ‘{print $2}’); do
                # Add a pipe before adding more MACs
                if [ -n “$mac” ]; then
                mac=$mac|
                fi
                done[/code]

                This, from what I can tell, should allow us to just echo back the mac variable and we don’t need the xargs and cut commands to operate as the only things returned is our pipe delimited list of MAC Addresses.

                Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                1 Reply Last reply Reply Quote 0
                • T
                  Tom Elliott
                  last edited by Mar 10, 2015, 10:39 PM

                  [code]# Get All Active MAC Addresses
                  getMACAddresses()
                  {
                  IFS=$‘\n’
                  # Create a pipe-separated MAC List
                  for macline in $(ip addr | grep link/ether | awk ‘{print $2}’); do
                  # Add a pipe before adding more MACs
                  if [ -n “$mac” ]; then
                  mac=$mac|
                  fi
                  mac=$macecho $macline;
                  done
                  IFS=
                  echo $mac
                  }[/code]

                  Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                  Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                  Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                  1 Reply Last reply Reply Quote 0
                  • C
                    cspence Developer
                    last edited by Mar 10, 2015, 10:40 PM

                    [quote=“Tom Elliott, post: 43618, member: 7271”]Oh, i do have a thought though.

                    Using the generate our interfaces file on the fly method, I can add the e-polling capabilities of the kernel to use more proper methods of device management. This means not all devices will automatically have eth* names, but rather whatever the device is. Is there a simpler way without designating the specific devices to search for?[/quote]

                    [CODE]# Set for loop delimiters to just newline
                    IFS=$‘\n’

                    Create a pipe-separated MAC list

                    for macline in $(ip addr | grep link/ether)
                    do
                    # Add a pipe before adding more MACs
                    if [ -n “$mac” ]; then
                    mac=$mac|
                    fi
                    mac=$macecho $macline | xargs | cut -d ' ' -f 2
                    done

                    Reset delimiters

                    IFS=[/CODE]

                    I just realized I was doing a grep on link/ether so that doesn’t include lo. Enjoy!

                    1 Reply Last reply Reply Quote 0
                    • S
                      Sebastian Roth Moderator
                      last edited by Mar 10, 2015, 10:50 PM

                      Not using any extra ip tools … /sys/class/net/*/address …

                      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                      1 Reply Last reply Reply Quote 0
                      • C
                        cspence Developer
                        last edited by Mar 10, 2015, 10:53 PM

                        [code]# Get All Active MAC Addresses
                        getMACAddresses()
                        {
                        IFS=$‘\n’
                        # Create a pipe-separated MAC List
                        for macline in $(ip addr | grep link/ether | awk ‘{print $2}’); do
                        # Add a pipe before adding more MACs
                        if [ -n “$mac” ]; then
                        mac=$mac|
                        fi
                        mac=${mac}${macline};
                        done
                        IFS=
                        echo $mac
                        }[/code]

                        Caught a bug with your final mac= statement. Also, “ip addr” is fine by itself.

                        1 Reply Last reply Reply Quote 0
                        • T
                          Tom Elliott
                          last edited by Mar 10, 2015, 10:56 PM

                          yeah I saw and edited. The echo needs to occur there. and I am using just ip addr

                          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                          Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                          Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                          1 Reply Last reply Reply Quote 0
                          • T
                            Tom Elliott
                            last edited by Mar 10, 2015, 10:56 PM

                            [quote=“Uncle Frank, post: 43623, member: 28116”]Not using any extra ip tools … /sys/class/net/*/address …[/quote]

                            We have to know the exact path name, so it’s simpler to just use the tools that get that for us I think.

                            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                            Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                            Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                            1 Reply Last reply Reply Quote 0
                            • S
                              Sebastian Roth Moderator
                              last edited by Mar 10, 2015, 10:59 PM

                              [quote=“Tom Elliott, post: 43626, member: 7271”]We have to know the exact path name, so it’s simpler to just use the tools that get that for us I think.[/quote]
                              I don’t think so…
                              [CODE]# Get All Active MAC Addresses
                              getMACAddresses()
                              {
                              IFS=$‘\n’
                              # Create a pipe-separated MAC List
                              for macline in $(cat /sys/class/net/*/address); do
                              # Add a pipe before adding more MACs
                              if [ -n “$mac” ]; then
                              mac=$mac|
                              fi
                              mac=${mac}${macline};
                              done
                              IFS=
                              echo $mac
                              }[/CODE]
                              No ip, no awk, no grep…

                              Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                              Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                              1 Reply Last reply Reply Quote 0
                              • S
                                Sebastian Roth Moderator
                                last edited by Mar 10, 2015, 10:59 PM

                                And I still wonder, why do we need the IFS here??

                                Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                1 Reply Last reply Reply Quote 0
                                • C
                                  cspence Developer
                                  last edited by Mar 10, 2015, 11:04 PM

                                  [quote=“Uncle Frank, post: 43627, member: 28116”]I don’t think so…
                                  [CODE]# Get All Active MAC Addresses
                                  getMACAddresses()
                                  {
                                  IFS=$‘\n’
                                  # Create a pipe-separated MAC List
                                  for macline in $(cat /sys/class/net/*/address); do
                                  # Add a pipe before adding more MACs
                                  if [ -n “$mac” ]; then
                                  mac=$mac|
                                  fi
                                  mac=${mac}${macline};
                                  done
                                  IFS=
                                  echo $mac
                                  }[/CODE]
                                  No ip, no awk, no grep…[/quote]

                                  It grabs lo’s MAC. But I like where this is going…

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Sebastian Roth Moderator
                                    last edited by Mar 10, 2015, 11:06 PM

                                    [CODE]… cat /sys/class/net/???*/address …[/CODE] kind of hackish but…

                                    Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                    Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      cspence Developer
                                      last edited by Mar 10, 2015, 11:12 PM

                                      How low can we go?

                                      [CODE]# Get All Active MAC Addresses
                                      getMACAddresses()
                                      {
                                      lomac=00:00:00:00:00:00
                                      cat /sys/class/net/*/address | grep -v $lomac | tr ‘\n’ ‘|’ | sed s/.$//g
                                      }[/CODE]

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Sebastian Roth Moderator
                                        last edited by Mar 10, 2015, 11:13 PM

                                        sed, grep, tr and all the rest are very nice but we don’t really need them here, do we?
                                        [CODE]… cat /sys/class/net/[^l][^o]*/address …[/CODE]

                                        And still wondering about if ‘IFS’ is needed here. Sorry goto go now.

                                        Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                        Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          Tom Elliott
                                          last edited by Mar 10, 2015, 11:14 PM

                                          I like it

                                          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                          Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                          Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                          1 Reply Last reply Reply Quote 0
                                          • 1
                                          • 2
                                          • 1 / 2
                                          1 / 2
                                          • First post
                                            14/33
                                            Last post

                                          180

                                          Online

                                          12.0k

                                          Users

                                          17.3k

                                          Topics

                                          155.2k

                                          Posts
                                          Copyright © 2012-2024 FOG Project