Text & Data🔒 Browser (client-side)API available📴 Works offlinebeginner
MAC Validator
Validates MAC address formats (AA:BB:CC:DD:EE:FF, hyphens, Cisco dotted).
Data stays in your browser
Ready to runInstant execution
Result
—What does this tool do?
Validates MAC address formats (AA:BB:CC:DD:EE:FF, hyphens, Cisco dotted).
Why would I use it?
- You are entering MAC addresses for DHCP reservations.
- You want to normalize MAC formats.
- You are auditing network configuration.
Real-life example
Input
00:1A:2B:3C:4D:5E
Output
✓ Valid MAC (unicast, locally administered)
Format and flags are checked.
Input → Process → Output → Next
- Input
- Type a MAC address.
- Process
- The browser validates the format and flags.
- Output
- Valid/invalid with detail.
- Next action
- Use the normalized form in your config.
Common mistakes
- Mixing separators within one address.
- Using multicast/broadcast addresses as device MACs.
- Expecting validation of OUI vendor (not performed).
What the result means
Valid means the address is well-formed.
Privacy & security
Your input is processed entirely in your browser and never sent to a YAS server.
API
Endpoint
POST https://yas.sh/api/v1/tools/mac-validator
Request Header
Content-Type: application/json
cURL
curl -X POST "https://yas.sh/api/v1/tools/mac-validator" \
-H "Content-Type: application/json" \
-d '{"input":"00:1B:44:11:3A:B7"}'JavaScript
const res = await fetch("https://yas.sh/api/v1/tools/mac-validator", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"input": "00:1B:44:11:3A:B7"
}),
});
const data = await res.json();Python
import requests
r = requests.post("https://yas.sh/api/v1/tools/mac-validator", json={"input":"00:1B:44:11:3A:B7"})
data = r.json()| Field | Type | Required | Description |
|---|---|---|---|
| input | string | Yes | e.g. 00:1B:44:11:3A:B7 |
Success response
{ "slug": "mac-validator", "result": { "input": "00:1B:44:11:3A:B7", "valid": true } }Validate MAC addresses (colon/hyphen/plain forms).
Error responses
400 VALIDATION_ERROR— invalid input or unsupported option.413 PAYLOAD_TOO_LARGE— input exceeds the 64 KB limit.429 RATE_LIMIT_EXCEEDED— rate limit exceeded (60 req/min).
Limits
- Maximum input: 64 KB per request.
- Rate limit: 60 requests/min per IP address.
- Authenticated accounts benefit from higher tier quotas.
Related tools