ip_address¶
validators.ip_address.ipv4(value, /, *, cidr=True, strict=False, private=None, host_bit=True)
¶
Returns whether a given value is a valid IPv4 address.
From Python version 3.9.5 leading zeros are no longer tolerated and are treated as an error. The initial version of ipv4 validator was inspired from WTForms IPAddress validator.
Examples:
>>> ipv4('123.0.0.7')
# Output: True
>>> ipv4('1.1.1.1/8')
# Output: True
>>> ipv4('900.80.70.11')
# Output: ValidationError(func=ipv4, args={'value': '900.80.70.11'})
Parameters:
Name | Type | Description | Default |
---|---|---|---|
value |
str
|
IP address string to validate. |
required |
cidr |
bool
|
IP address string may contain CIDR notation. |
True
|
strict |
bool
|
IP address string is strictly in CIDR notation. |
False
|
private |
Optional[bool]
|
IP address is public if |
None
|
host_bit |
bool
|
If |
True
|
Returns:
Type | Description |
---|---|
Literal[True]
|
If |
ValidationError
|
If |
Source code in src/validators/ip_address.py
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
|
validators.ip_address.ipv6(value, /, *, cidr=True, strict=False, host_bit=True)
¶
Returns if a given value is a valid IPv6 address.
Including IPv4-mapped IPv6 addresses. The initial version of ipv6 validator was inspired from WTForms IPAddress validator.
Examples:
>>> ipv6('::ffff:192.0.2.128')
# Output: True
>>> ipv6('::1/128')
# Output: True
>>> ipv6('abc.0.0.1')
# Output: ValidationError(func=ipv6, args={'value': 'abc.0.0.1'})
Parameters:
Name | Type | Description | Default |
---|---|---|---|
value |
str
|
IP address string to validate. |
required |
cidr |
bool
|
IP address string may contain CIDR annotation. |
True
|
strict |
bool
|
IP address string is strictly in CIDR notation. |
False
|
host_bit |
bool
|
If |
True
|
Returns:
Type | Description |
---|---|
Literal[True]
|
If |
ValidationError
|
If |
Source code in src/validators/ip_address.py
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
|