How to resolve the algorithm MAC vendor lookup step by step in the Common Lisp programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm MAC vendor lookup step by step in the Common Lisp programming language

Table of Contents

Problem Statement

Every connected device around the world comes with a unique Media Access Control address, or a   MAC address. A common task a network administrator may come across is being able to identify a network device's manufacturer when given only a MAC address.

Interface with one (or numerous) APIs that exist on the internet and retrieve the device manufacturer based on a supplied MAC address. A MAC address that does not return a valid result should return the String "N/A".   An error related to the network connectivity or the API should return a null result. Many implementations on this page use http://api.macvendors.com/ which, as of 19th September 2021, is throttling requests. After only 2 calls, the following response is returned for all subsequent requests. If you are planning to use the same provider or going to run the examples on this page, consider building in a delay between two calls. {"errors":{"detail":"Too Many Requests","message":"Please slow down your requests or upgrade your plan at https://macvendors.com"}}

Let's start with the solution:

Step by Step solution about How to resolve the algorithm MAC vendor lookup step by step in the Common Lisp programming language

Source code in the common programming language

(quicklisp:quickload :Drakma)            ; or load it in another way

(defun mac-vendor (mac)
  (check-type mac string "A MAC address as a string")
  (multiple-value-bind (vendor status)
    (drakma:http-request (format nil "http://api.macvendors.com/~a" mac))
    (if (= 200 status)
      (format t "~%Vendor is ~a" vendor)
      (error "~%Not a MAC address: ~a" mac))))

  

You may also check:How to resolve the algorithm 4-rings or 4-squares puzzle step by step in the Modula-2 programming language
You may also check:How to resolve the algorithm Parsing/RPN calculator algorithm step by step in the ANTLR programming language
You may also check:How to resolve the algorithm Pierpont primes step by step in the Perl programming language
You may also check:How to resolve the algorithm Determine if a string is numeric step by step in the EchoLisp programming language
You may also check:How to resolve the algorithm Y combinator step by step in the REXX programming language