방화벽을 끄고 켜고를 해보려고 했는데...
C#으로 해보려다 다음과 같은 에러로..
NotImplementedException으로 방화벽이 작동 중(켜져있는 상태)에서는 다음과 같은 에러가 발생한다.
신기하게도 꺼져있을 땐 실행 된다... 뭔미....
찾아보던 중에 커맨드 명령으로 가능한 것을 알아 냈고 흐흐...
netsh.exe을 사용하면 가능하다.
netsh.exe를 알아보자.
netsh.exe /?를 이용하면 도움말을 보자
사용법: netsh.exe [-a 별칭 파일] [-c 컨텍스트] [-r 원격 컴퓨터] [-u [DomainName\]UserName] [-p 암호 | *]
[명령 | -f 스크립트 파일]
다음 명령을 사용할 수 있습니다.
이 컨텍스트에 있는 명령:
? - 명령 목록을 표시합니다.
add - 항목 목록에 구성 항목을 추가합니다.
advfirewall - `netsh advfirewall' 컨텍스트의 변경 내용입니다.
bridge - `netsh bridge' 컨텍스트의 변경 내용입니다.
delete - 항목 목록에서 구성 항목을 삭제합니다.
dhcpclient - `netsh dhcpclient' 컨텍스트의 변경 내용입니다.
dump - 구성 스크립트를 표시합니다.
exec - 스크립트 파일을 실행합니다.
firewall - `netsh firewall' 컨텍스트의 변경 내용입니다.
help - 명령 목록을 표시합니다.
http - `netsh http' 컨텍스트의 변경 내용입니다.
interface - `netsh interface' 컨텍스트의 변경 내용입니다.
ipsec - `netsh ipsec' 컨텍스트의 변경 내용입니다.
lan - `netsh lan' 컨텍스트의 변경 내용입니다.
nap - `netsh nap' 컨텍스트의 변경 내용입니다.
netio - `netsh netio' 컨텍스트의 변경 내용입니다.
p2p - `netsh p2p' 컨텍스트의 변경 내용입니다.
ras - `netsh ras' 컨텍스트의 변경 내용입니다.
rpc - `netsh rpc' 컨텍스트의 변경 내용입니다.
set - 구성 설정을 업데이트합니다.
show - 정보를 표시합니다.
winhttp - `netsh winhttp' 컨텍스트의 변경 내용입니다.
winsock - `netsh winsock' 컨텍스트의 변경 내용입니다.
wlan - `netsh wlan' 컨텍스트의 변경 내용입니다.
다음 하위 컨텍스트를 사용할 수 있습니다.
advfirewall bridge dhcpclient firewall http interface ipsec lan nap netio p2p ras rpc winhttp winsock wlan
명령에 대한 도움말을 보려면
명령을 입력한 다음 공백을 입력한 후 ?을(를) 입력하십시오.
|
위와 같이 사용 할수 있다.
방화벽을 꺼보자.
아래와 같이 명령어를 실행 해보자
C:\>netsh firewall set opmode mode=DISABLE |
그럼 방화벽이 꺼지면서 방화벽이 꺼졌다는 상태바에 메시지가 뜰 것입니다.
C:\>netsh firewall set opmode mode=ENABLE |
위와 같이 한다면 켜지겠죠? ^^
다른 명령어는 사용 해봐야 할 것 같습니다.