Enhance local provider URL detection for IPv6 and loopback ranges
This commit is contained in:
@@ -6,6 +6,10 @@ test('treats localhost endpoints as local', () => {
|
||||
expect(isLocalProviderUrl('http://localhost:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://127.0.0.1:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://0.0.0.0:11434/v1')).toBe(true)
|
||||
// Full 127.0.0.0/8 loopback range should be treated as local
|
||||
expect(isLocalProviderUrl('http://127.0.0.2:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://127.1.2.3:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://127.255.255.255:11434/v1')).toBe(true)
|
||||
})
|
||||
|
||||
test('treats private IPv4 endpoints as local', () => {
|
||||
@@ -18,7 +22,14 @@ test('treats .local hostnames as local', () => {
|
||||
expect(isLocalProviderUrl('http://ollama.local:11434/v1')).toBe(true)
|
||||
})
|
||||
|
||||
test('treats private IPv6 endpoints as local', () => {
|
||||
expect(isLocalProviderUrl('http://[fd00::1]:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://[fe80::1]:11434/v1')).toBe(true)
|
||||
expect(isLocalProviderUrl('http://[::1]:11434/v1')).toBe(true)
|
||||
})
|
||||
|
||||
test('treats public hosts as remote', () => {
|
||||
expect(isLocalProviderUrl('http://203.0.113.1:11434/v1')).toBe(false)
|
||||
expect(isLocalProviderUrl('https://example.com/v1')).toBe(false)
|
||||
expect(isLocalProviderUrl('http://[2001:4860:4860::8888]:11434/v1')).toBe(false)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user