ifconfig-push: adresa protistrany v net30, nebo maska podsítě v subnet?
Druhý argument ifconfig-push je adresa protistrany v net30 a maska podsítě pod topology subnet. Porovnejte běžící topologii, než upravíte soubor CCD.
Dynamičtí klienti se připojují a směrování funguje správně, ale jediný klient s pevnou adresou se vůbec nedostane na server. Na firewallu se nic nezměnilo a řádek v CCD vypadá věrohodně. Obvyklou příčinou je druhý argument napsaný pro jinou topologii TUN, než se kterou server běží. Selhání je tiché: klient získá adresu a server přijme spojení, přesto však neprochází žádný provoz.
V net30 je toto pole adresa protistrany; v subnet je to maska podsítě. Obě formy jsou alternativy, nikdy ne posloupnost.
Obě formy vedle sebe
V tradičním nasazení net30 vlastní každý klient blok /30: síťovou adresu, dvě použitelné adresy a broadcastovou adresu. ifconfig-push bere adresu klienta a adresu protistrany a protistrana je druhá použitelná adresa ve stejném bloku, kterou používá serverová strana spoje bod-bod.
# net30: client address and its peer
ifconfig-push 10.99.0.6 10.99.0.5
# topology subnet: client address and the pool netmask
ifconfig-push 10.99.0.20 255.255.255.0
Pod topology subnet sdílí klient jednu podsíť se serverem a stejná direktiva bere adresu a masku podsítě. Vlastní adresa serveru pochází z direktivy server, nikoli z druhého pole. Míchání forem vytvoří klienta, který si myslí, že je na spoji bod-bod, zatímco server ho směruje jako hostitele v podsíti, nebo naopak. Proto se maska podsítě nesmí nikdy spárovat s net30.
Oba řádky v bloku jsou samostatné řádky pro soubor CCD. Každý klient dostane právě jeden z nich.
Přečtěte topologii, se kterou server skutečně běží
Čtěte běžící konfiguraci, ne výchozí hodnotu z balíčku, protože topologie mohla být nastavena před lety a zkopírována dál. Hledejte topology subnet nebo jeho nepřítomnost, potom zkontrolujte, jak řádek server přiděluje adresy. Konfigurace, která topologii nikdy nezmiňuje, není totéž jako konfigurace, která nastavuje subnet.
Pak si přečtěte nastavení, která klient obdržel. Adresa, maska a protistrana, které hlásí, vám řeknou, jaký výklad server použil.
Pevnou adresu držte mimo dynamický pool
Pevná adresa musí ležet mimo dynamický pool, jinak mohou dva klienti dostat stejnou adresu. U topologie subnet potlačí nopool na řádku server automatický pool a explicitní rozsah ifconfig-pool určuje, co dynamičtí klienti dostanou.
dev tun
topology subnet
server 10.99.0.0 255.255.255.0 nopool
ifconfig-pool 10.99.0.100 10.99.0.210 255.255.255.0
client-config-dir /etc/openvpn/ccd
Server si bere 10.99.0.1 a pevná adresa klienta leží mimo rozsah poolu. Soubor CCD se pojmenovává podle efektivní identity klienta, nikoli podle názvu profilového souboru, a nemá žádnou další příponu. Pokud je username-as-common-name aktivní, je identitou k přiřazení ověřené uživatelské jméno. Dvě zařízení, která sdílí jednu identitu, budou sdílet i pevnou adresu, což je problém politiky, nikoli směrování.
Ověřte přidělení, které klient skutečně dostal
Znovu připojte zamýšleného klienta a potvrďte, který soubor CCD byl vybrán, než zkontrolujete cokoli dalšího. Potom ověřte adresu, masku nebo protistranu a cestu zpět na server. Klient, který v nasazení subnet zobrazuje adresu protistrany, stále používá špatnou formu.
Změna topologie ovlivní každého klienta a každé přepsání, takže k ní přistupujte jako k migraci, nikoli jako k opravě jednoho klienta. Oprava statického řádku tak, aby odpovídal již používané topologii, je obvykle menší změnou. reference server-options dokumentuje pomocník a přepsání specifická pro klienta.