mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-30 20:14:49 +00:00
feat: add mdns hostname metadata variant and fix vhost routing
- Add HostnameMetadata::Mdns variant to distinguish mDNS from private domains - Mark mDNS addresses as private (public: false) since mDNS is local-only - Fall back to null SNI entry when hostname not found in vhost mapping - Simplify public detection in ProxyTarget filter - Pass hostname to update_addresses for mDNS domain name generation
This commit is contained in:
@@ -30,6 +30,7 @@ function getGatewayIds(h: T.HostnameInfo): string[] {
|
||||
case 'ipv6':
|
||||
case 'public-domain':
|
||||
return [h.metadata.gateway]
|
||||
case 'mdns':
|
||||
case 'private-domain':
|
||||
return h.metadata.gateways
|
||||
case 'plugin':
|
||||
@@ -45,8 +46,10 @@ function getAddressType(h: T.HostnameInfo): string {
|
||||
return 'IPv6'
|
||||
case 'public-domain':
|
||||
return 'Public Domain'
|
||||
case 'mdns':
|
||||
return 'mDNS'
|
||||
case 'private-domain':
|
||||
return h.host.endsWith('.local') ? 'mDNS' : 'Private Domain'
|
||||
return 'Private Domain'
|
||||
case 'plugin':
|
||||
return 'Plugin'
|
||||
}
|
||||
@@ -84,8 +87,7 @@ export class InterfaceService {
|
||||
const isDomain =
|
||||
h.metadata.kind === 'private-domain' ||
|
||||
h.metadata.kind === 'public-domain'
|
||||
const isMdns =
|
||||
h.metadata.kind === 'private-domain' && h.host.endsWith('.local')
|
||||
const isMdns = h.metadata.kind === 'mdns'
|
||||
|
||||
const address: GatewayAddress = {
|
||||
enabled,
|
||||
|
||||
@@ -2137,7 +2137,7 @@ export namespace Mock {
|
||||
host: 'adjective-noun.local',
|
||||
port: 1234,
|
||||
metadata: {
|
||||
kind: 'private-domain',
|
||||
kind: 'mdns',
|
||||
gateways: ['eth0', 'wlan0'],
|
||||
},
|
||||
},
|
||||
|
||||
@@ -49,7 +49,7 @@ export const mockPatchData: DataModel = {
|
||||
host: 'adjective-noun.local',
|
||||
port: 443,
|
||||
metadata: {
|
||||
kind: 'private-domain',
|
||||
kind: 'mdns',
|
||||
gateways: ['eth0', 'wlan0'],
|
||||
},
|
||||
},
|
||||
@@ -515,7 +515,7 @@ export const mockPatchData: DataModel = {
|
||||
host: 'adjective-noun.local',
|
||||
port: 443,
|
||||
metadata: {
|
||||
kind: 'private-domain',
|
||||
kind: 'mdns',
|
||||
gateways: ['eth0'],
|
||||
},
|
||||
},
|
||||
@@ -622,7 +622,7 @@ export const mockPatchData: DataModel = {
|
||||
host: 'adjective-noun.local',
|
||||
port: 8332,
|
||||
metadata: {
|
||||
kind: 'private-domain',
|
||||
kind: 'mdns',
|
||||
gateways: ['eth0'],
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user