- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
Lookup IPv4 by MAC Address
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-29-2022 11:10 AM
Hello,
I have been playing around with the WAPI documentation for the past few days. One thing I have not found an answer for is how to lookup an IPv4 address based on MAC address. This would be very helpful when it comes to automating the process to register new network devices to fixed addresses. My goal is to convert the API calls into powershell and run them from a script.
I have had some success with simple calls like the following:
$result = Invoke-RestMethod -Method Get -Uri https://$Gridmaster/wapi/v2.7/ipv4address?ip_address=$ipv4Addr -Credential $cred
and this one:
$searchIPv4 = Invoke-RestMethod -Method Get -Uri https://$Gridmaster/wapi/v2.7/search?address=$ipv4Addr -Credential $cred
Any ideas on how I can accomplish this goal through the WAPI interface?
Re: Lookup IPv4 by MAC Address
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2022 02:07 PM
You will need to specify which fields to return, using the _return_fields option. For example _return_fields+=mac_address . The MAC address is not included by default.
Re: Lookup IPv4 by MAC Address
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-08-2022 05:16 AM
Thank you for the response.
Do you happen to have an example of what this query would look like? I'm struggling to find examples and the docuemntation isnt quite clear on how I am supposed to format the call.
I think an example of a good call that uses the _return_fields option will help me out alot.
Re: Lookup IPv4 by MAC Address
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-08-2022 11:21 AM
I made some good progress.
First, I can lookup the IPv4 address based on the network AND MAC address here:
$searchMac = Invoke-RestMethod -Method Get -Uri https://$Gridmaster/wapi/v2.7/ipv4address?network=$ipv4Net"&"mac_address=$mac_addr -Credential $cred
Then I can extract the info from here:
$ip = $searchMAC.ip_address
Next, I can lookup the MAC address based on the IP address here:
$searchIPv4 = Invoke-RestMethod -Method Get -Uri https://$gridmaster/wapi/v2.7/ipv4address?ip_address=$ip -Credential $cred
Then I can extract the info from here:
$macadd = $searchIPv4.mac_address
So now the only cleanup is to try and isolate down how to look up an IPv4 address with only a MAC address.
It doesnt appear that mac_address is enough to complete the call on the ipv4address object:
$test = Invoke-RestMethod -Method Get -Uri https://$gridmaster/wapi/v2.7/ipv4address?mac_address=$mac_addr -Credential $cred
Is there a more direct way to search the whole IPv4Address object for an IPv4 address by MAC address only? Otherwise I would have to build a loop and search through every network that we own one at a time to see if there is a match. While that is possible its not very efficient.