IT Questions and Answers :)

Thursday, July 4, 2019

Which of the following devices would you use to separate broadcast domains on a network?

Which of the following devices would you use to separate broadcast domains on a network?

  • Switch
  • Router
  • Hub
  • Bridge 
Which of the following devices would you use to separate broadcast domains on a network?


EXPLANATION

A switch uses layer two of the OSI model, so the switch uses MAC addresses to send frames to the correct device. Rather than sending it to all ports a switch only sends the frame out one port, if it has the MAC address in its MAC address table. If not the switch will send the frame on all ports except for the port in which the frame was received on. Switches provide separate collision domains on each port, this provides dedicated bandwidth to that device and allows simultaneous conversations between devices on different ports. Each port can be operated at full-duplex so the device can send and receive information at the same time.  

A broadcast domain is like a collision domain, however the difference is these broadcast domains belong to a set of devices in the same layer two domain. These kind of blur together between a layer three broadcast message and a layer two broadcast message (FFFF:FFFF:FFFF). A layer two broadcast goes to every host in the same LAN/VLAN. To make it little more fun there are two types of layer three broadcast messages
Limited/Local Broadcast – (255.255.255.255) is often used when the host really has no idea what network its on and waits for a DHCP server to respond back. As well as if a host needs to know the MAC address of a another host on the same LAN/VLAN. This broadcast goes to every host on the same LAN/VLAN and is the most common type of broadcast message.
Directed Broadcast – Is a directed IP packet whose destination is a valid broadcast address on the network that the host is not currently a part of. A router would forward this on to the correct network, however this is usually disabled by default. Example 192.168.1.255/24
Also keep in mind when you send a layer three broadcast you’ll also send a layer two broadcast regardless of what type of layer three broadcast message is sent. This also works the other way, when you send a layer two broadcast message you’ll also send a layer three broadcast message.

 

Share:

What keyword enables port address translation on a Cisco router?

What keyword enables port address translation on a Cisco router?

  • overload
  • pat
  • ip nat outside interface subcommand
  • nat 
 What keyword enables port address translation on a Cisco router?


EXPLANATION

Port Address Translation (PAT) {also known as Network Address Port Translator (NAPT)}. Port Address Translation (PAT), is an extension to network address translation (NAT) that permits multiple devices on a local area network (LAN) to be mapped to a single public IP address. The goal of PAT is to conserve IP addresses.

Share:

What is metadata?

What is metadata?

  • The cloud
  • Incomplete information
  • Information about data
  • Large amounts of storage 
What is metadata?


EXPLANATION

Metadata is "data [information] that provides information about other data". Many distinct types of metadata exist, among these descriptive metadata, structural metadata, administrative metadata, reference metadata and statistical metadata. Descriptive metadata describes a resource for purposes such as discovery and identification.

 

Share:

What does Windows use IRQL for?

What does Windows use IRQL for?

  • Allow Windows to create BSoD error
  • Set levels for hardware priority
  • Interpret requests for the CPU
  • Send messages to other computers 
What does Windows use IRQL for?


EXPLANATION

IRQL stands for "Interrupt Request Level". It is a number, ranging from 0 through 31 on Windows x86 systems and 0 through 15 on x64 systems. It represents the "importance" of a kernel mode task relative to other kernel mode tasks.


IRQL is a Windows-defined state of the processor - not of a process or thread - that indicates to Windows whether or not whatever that processor is doing can be interrupted by other tasks. If a new task (such as an interrupt service routine) has a higher IRQL than the processor's current IRQL, then yes, it can interrupt the current task; otherwise no. On a multiprocessor system each processor has its own IRQL. This includes the "Logical Processors" created by hyperthreading. 
( I use the word "importance" rather than "priority" because "priority" in Windows refers to thread priorities, and IRQLs are something different. Unlike thread priorities, kernel tasks at the same IRQL are not time-sliced, and IRQLs aren't subject to automatic boost and decay. )
( I should also mention that the term "kernel task" here is not official. Windows does not really call these things "kernel tasks", they are not managed objects as are e.g. processes and threads, and there is no relation to x86 "task gates" nor to anything shown in "Task Manager". As I (and others) use the term here, "kernel mode task" really covers "anything with a defined beginning and end that needs to be done in kernel mode at IRQL 2 or above." An interrupt service routine is a one example of a "kernel mode task"; so is a DPC routine. But another example can be code in a kernel mode thread. Such threads start at IRQL 0, but if part of the code raises to IRQL 2 or above, does something, and then returns to its previous IRQL, the high-IRQL part of the code is one example of what I'm calling a "kernel task" here. )

Performance Monitor shows time spent at IRQL 2 as "% DPC time" and time at IRQL > 2 as "% interrupt time", regardless of whether the time was actually spent in a DPC routine or ISR or was a the result of raising IRQL from a lower value. Each is a subset of what PerfMon shows as "% privileged time" - which should have been labeled "kernel mode time".
Once a kernel task is started at IRQL 2 or above, it runs to completion before anything else at the same IRQL will be started on the same processor. It may be interrupted by a higher-IRQL task (which could in turn be interrupted by a yet higher-IRQL task, etc.), but when the higher-IRQL tasks complete, control returns to the task it interrupted.

IRQL is primarily a serialization mechanism. (Many say "synchronization", but I prefer this word as it more exactly describes the result.) Its purpose is to help guarantee that multiple tasks on the same CPU that access certain shared resources - mostly shared data structures in the OS kernel space - are not allowed to interrupt each other in ways that could corrupt those structures.
For example, a great deal of data in the Windows kernel, particularly the memory management data and the data used by the thread scheduler, is "serialized" at IRQL 2. That means that any task that wants to modify such data must be running at IRQL 2 when it does so. If a higher-IRQL task attempts to write such data, that could cause corruption, because it might have interrupted an IRQL 2 task which might be in the middle of a read-modify-write cycle on that same data. So higher-IRQL tasks are simply not allowed to do that.
Higher-IRQL tasks are mostly the interrupt service routines of device drivers, because all devices' interrupts occur at IRQL > 2. This includes the interrupt from the timer chip on the motherboard that drives timekeeping and time-driven-activity in the OS. Its IRQL is above that of all "ordinary" hardware devices.

IRQLs 2 and above are used for kernel tasks that are not triggered by hardware interrupts but during which normal thread scheduling - including waiting - cannot occur. Thus once a processor is at IRQL 2 or above, no thread context switches can happen on that processor until IRQL drops below 2.
User mode code is always at IRQL 0. Kernel mode code can run at any IRQL from 0 through whatever the max is. IRQL 1 is a special case; it is kernel mode only but has no impact on scheduling, and is really more a state of a thread than of the processor - it is saved and restored during thread context switches, for example.

In order to maintain various serialization guarantees, most exceptions (things like divide by zero, or memory access violations like page faults) are simply not handle-able at IRQL 2 or above. (IRQL 2 btw is commonly called "dispatch level" or "DPC level".)
And now we can finally explain this bugcheck code!

The most common case of IRQL_NOT_LESS_OR_EQUAL is due to a page fault (attempt to access a "not resident" virtual address), or a memory access violation (attempt to write to a read-only page, or to access a page that is not defined at all), that occurs at IRQL 2 or above.
If such exceptions are raised at IRQL 0 or 1, they can be "handled" either by system-supplied code (like the page fault handler) or by an exception handler provided by the developer. However, most exceptions cannot be handled at all if they occurred at IRQL 2 or above.
So... the bugcheck code means "an exception of a type that can only be handled at IRQL 0 or 1 occurred when IRQL was at 2 or higher." i.e. "not less than or equal to 1". Strange wording, but there it is.
There are a few other things that can trigger this bugcheck, and the value that the IRQL is not less or equal to is not always 1, but they occur only rarely. The WinDBG documentation lists them.

 

Share:

An unauthorized zone transfer is a threat to what type of server?

An unauthorized zone transfer is a threat to what type of server?

  • Exchange
  • DNS
  • VMWare
  • Database 

An unauthorized zone transfer is a threat to what type of server?

EXPLANATION

The data contained in a DNS zone may be sensitive from an operational security aspect. This is because information such as server hostnames may become public knowledge, which can be used to discover information about an organization and even provide a larger attack surface. (Wikipedia)

SOURCE

https://en.wikipedia.org/wiki/DNS_zone_transfer#Exposure_of_data

 

 

Share:

Popular Posts