Linux 시스템에서는 다음 명령을 사용하여 패킷 전달을 활성화할 수 있습니다.
~ # sysctl net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
하지만 Windows에서 동일한 기능을 어떻게 실현할 수 있습니까?
나는 사용한다 Windows Server 2008 R2
.
답변1
레지스트리 키로 이동해 보십시오 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
. 아직 없는 경우 REG_DWORD
라는 새 값을 만듭니다 IPEnableRouter
. IPEnableRouter
으로 설정 1
하고 재부팅하세요. 이제 패킷 전달이 활성화되어야 합니다.
정적 경로를 추가하려면 route
명령을 사용하십시오.
답변2
특정 인터페이스 또는 모든 인터페이스에 대한 전달을 활성화하려는 경우 재부팅할 필요 없이 PowerShell에서 쉽게 수행할 수 있습니다. (참고: 설정을 변경하려면 관리자 권한으로 실행해야 합니다.)
모든 인터페이스의 전달 상태를 보려면 다음을 실행하면 됩니다.
Get-NetIPInterface | select ifIndex,InterfaceAlias,AddressFamily,ConnectionState,Forwarding | Sort-Object -Property IfIndex | Format-Table
그러면 모든 인터페이스와 현재 전달 구성을 보여주는 멋진 테이블이 제공됩니다.
그런 다음 전달을 활성화하려면 다음을 실행할 수 있습니다.
Set-NetIPInterface -ifindex <required interface index from table> -Forwarding Enabled
모든 인터페이스에 대해 활성화하려면 다음을 실행하면 됩니다.
Set-NetIPInterface -Forwarding Enabled
그런 다음 다시 비활성화하려면 "활성화"를 "비활성화"로 바꾸십시오.
활성화하는 것을 잊지 마세요.라우팅 및 원격 액세스 서비스(기본적으로 비활성화되어 있음) 다음을 실행하십시오.
Set-Service RemoteAccess -StartupType Automatic; Start-Service RemoteAccess