Carpe Diem: Flaphead.com 

Twitter Gplus LinkedIn RSS
 
 
 
 
formats

Enough is enough

Published on April 11th, 2013 by in !News

#wordpress

So I have been blogging for a while.  I started off using CommunityServer and then in the last year or so upgraded to WordPress.

My blog is hosted at home using Windows 2008 R2 on Hyper-V.  At home I use Virgin Media for my Broadband, and as I get a dynamic DNS, I use dns2go to public this blog.

It has happened a few time recently, where my home broadband just stops working, be it a router issue or outside network.  This is a royal pain the butt!

So, this week I signed up with WordPress, and paid for a business subscription.  I have move my data across (which was really time, wordpress to wordpress) and now have http://blog.flaphead.com alive and kicking on hosted wordpress.

So far so good, I have a new layout and I hope you like it.  Now in theory RSS should still work fine and I plan to move http://blog.flaphead.dns2go.com to wordpress over the weekend.

So if you experience any issues, surf to http://blog.flaphead.com  and re-add.

 
comments  Comments Off
formats

Stingray Traffic Manager Solution Guide – Microsoft Exchange 2010

#MSExchange #Riverbed #Stringray

The Riverbed Stingray documentation for Exchange Server 2010 has been updated!

PDF states Version 2.7.  .. created by Vinay Reddy on Mar 26, 2013 3:44 PM, last modified by Vinay Reddy on Mar 26, 2013 3:44 PM

Can see some updates on page 40 – 41, 43 – 47 and the script on page 60 -61 has a few cookie related updated as is noted as “Updated the TrafficScript for Single Virtual Server for all Exchange services with persistence configuration removed for OAB and AutoDiscover”

 

Check it out here:  https://splash.riverbed.com/docs/DOC-1716 -or- if they delete it ;-) here: http://FLAPHEAD.DNS2GO.COM/wp-content/uploads/2013/04/Stingray-Traffic-Manager-Solution-Guide-Microsoft-Exchange-2010.pdf

 

 
comments  Comments Off
formats

Don’t Ask!

Published on March 23rd, 2013 by in Flaphead

#VirginMedia So been away for a week and noticed last Sunday that I could not connect to this site or RDP home.

Get home last night to discover that my Virgin Media SuperHub isn’t so super.  It was dead!!  Checked out the power supply and found a similar one and yeah baby it came back up!

Get this, it has done a factory reset?! WTF don’t know what is going on .. Me thinks virgin has performed an upgrade (like it does) and toasted the SuperHub! .. The reset also cleared all my port rules and defaulted back to 192.168.0.x instead of .1.x.

Couldn’t for the life of me workout how to change it, so been re-iping all my VM’s and getting this blog back to land of the living! .. which is another thing.  For some reason I lost all my posts since January?  Not got a clue why or what the hell is going on, but let see how things go!

Should get my replacement SuperHub on Tuesday so I get the power supply back for a wireless access point I have .. Hay-Ho

 
comments  Comments Off
formats

PortQry ALL Domain Controllers using #Powershell

Published on March 13th, 2013 by in Powershell

So I don’t trust my network guys (sorry) as they say all ports are open but think they is not telling me the trust.

So knocked this up to test. You need to download PortQry from here: http://www.microsoft.com/en-us/download/details.aspx?id=17148

Change $PortQryExe to the location of the .exe

$matrix = @()
$PortQryExe = “Y:\Tools\PortQryV2\PortQry.exe”
$Ports2Scan = “udp-389″, “tcp-389″, “tcp-135″, “udp-135″, “udp-88″, “tcp-88″, “udp-445″, “tcp-445″, “tcp-1025″
$PortCnt = $Ports2Scan.count
$Fields = @();$fields += “Server”; $fields += $Ports2Scan

Write-Host “`nGetting Domain Controllers [$Server]”
$forest = [System.DirectoryServices.ActiveDirectory.Forest]::getcurrentforest()
$domains = $forest.domains
$servers = @()
$intDCcnt = 0
ForEach($Domain in $domains){
Write-Host $Domain.Name
$tmpDCs = $Domain.DomainControllers
ForEach($tmpDC in $tmpDCs){$servers += $tmpDC.name;$intDCcnt ++}
}
Write-Host ” -$intDCcnt Found” -Foregroundcolor Green

ForEach($Server in $Servers){
Write-host $Server
$tmpMatrix = “” | Select $Fields
$tmpMatrix.Server = $Server
For($i=0;$i -le $PortCnt -1;$i++){
$tmpPort2Scan = ($Ports2Scan[$i]).split(“-”)
$Protocol = $tmpPort2Scan[0]
$port = $tmpPort2Scan[-1]
$cmd = $PortQryExe + ” -n ” + $Server + ” -p ” + $Protocol + ” -e ” + $port

Write-Host ” – $cmd”
$Output = Invoke-Expression $cmd
$Output = $Output | Where {$_}
$tmpOutput = “” | Select Host, Server, Protocol, Port, Service, Status, Result
$tmpOutput.Host = (HOSTNAME)
$tmpOutput.Server = $Server
$tmpOutput.Protocol = $Port.Protocol
$tmpOutput.Port = $Port.port
$tmpOutput.Result = $Output[-1]

$tmpSplit = $tmpOutput.Result.Split(“:”)
$tmpOutput.Service = $tmpSplit[0]
$tmpOutput.Status = $tmpSplit[-1].trim()
Write-host ” +-” $tmpOutput.Result

$tmpMatrix.($Ports2Scan[$i]) = $tmpOutput.Result
}
$matrix += $tmpMatrix
}

$Matrix

The result is an array that you can export to csv and use some excel love on it.

Enjoy

 
comments  Comments Off
formats

Get a List of InSite DCs from Eventlog

#MsExchange #Powershell

So I have been having a bit of fun (well not really). The company I am working for has multiple AD domains in a single forest and the users are spread over the domains.

To start with, with almost every Exchange Management Shell cmdlet I run I need to also run the following:

Set-AdServerSettings -ViewEntireForest $True

Now with mailbox move requests, the exchange servers are in one domain and the users in another. I wanted a way to take the output from the MSExchange ADAccess 2080 event in the application event log and generate an array I can then play with in a script. I then use the array to use the right DC with the -DomainController switch. I came up with this:

$Evt2080 = Get-EventLog Application -Source “MSExchange ADAccess” | where {($_.Category -eq “Topology”) -AND ($_.EventId -eq 2080)} | Select -first 1

$InSiteMatrix = @()
$Fields = “Server”, “Roles”, “Enabled”, “Reachability”, “Synchronized”, “GCcapable”, “PDC”, “SACLright”, “CriticalData”, “Netlogon”, “OSVersion”
$InSite = ($Evt2080.ReplacementStrings[-2]).Split(“`n”) | Where {$_}
ForEach($Item in $InSite){
$tmpMatrix = “” | Select $Fields
$tmpSplit = $item.Split(“`t”)
$tmpMatrix.Server = $tmpSplit[0]
If($tmpMatrix.Server -ne “”){
$i=1
$tmpValues = $tmpSplit[-1].split(” “)
ForEach($thing in $tmpValues ){
$tmpMatrix.($Fields[$i]) = $thing
$i++
}
$InSiteMatrix += $tmpMatrix
}
}

$InSiteMatrix

Enjoy

 
comments  Comments Off
formats

Long boot times may be observed with Data ONTAP DSM 3.5

Published on February 16th, 2013 by in NetApp

NetApp

Interesting bug! that is supposed to be fixed in DSM 4.0 – http://support.netapp.com/NOW/cgi-bin/bol?Type=Detail&Display=591952

Bug ID 591952
Title Long boot times may be observed with Data ONTAP DSM 3.5
Duplicate of
Bug Severity 2 – System barely usable
Bug Status Fixed
Product Unknown
Bug Type ONTAP DSM
Description
 If a Windows Server host is running Data ONTAP DSM 3.5, long boot times may be observed.
 The boot time will vary based on the number of mapped LUNs and paths per mapped LUN.
 Boot times will be approximately 3 seconds per path, per LUN.
Workaround
 Reduce the number of mapped devices during Windows Server OS boot. You can do this
 several ways, which includes disabling the initiator ports before reboot or taking the
 mapped LUNs offline before the system startup.
 
comments  Comments Off
formats

#NetApp Data ONTAP DSM for Windows MPIO 4.0

Published on February 16th, 2013 by in NetApp

Found version 4.0 on the NetApp Support website post 14 Feb 2013

The Data ONTAP DSM for Windows MPIO enables you to manage multiple Fibre Channel (FC) and iSCSI paths between a NetApp or IBM N series storage system and a Windows host computer. You can have one or more active paths and zero or more passive paths, depending on the load balance policy. The DSM automatically selects paths for I/O as needed, maximizing throughput and maintaining the host’s access to its storage. The DSM has both graphical and command line management interfaces. You can install the DSM interactively or from a Windows command prompt.

New features: The Data ONTAP DSM 4.0 for Windows MPIO includes several new features and support for additional configurations:

  • Support for Windows Server 2012.
  • An enhanced GUI, offering a better organized and more detailed view of the virtual disks and paths managed by the DSM:
      • Extended virtual disk and path information.
      • Bulk operations on virtual disks and paths.
      • Visual indication of path status.
      • Extended path, LUN, and I/O information.
      • Persistent reservation status and reservation key information.
      • Persistent reservation configuration information.
      • Extended MPIO configuration information.
      • ALUA feature status.
      • PowerShell 2.0 or later is now required
  • Enhanced performance.
  • The mbralign.exe program is no longer supported. Use the Data ONTAP PowerShell Toolkit to detect and correct VHD partition alignment.
  • The legacy dsmcli is no longer supported. Use the PowerShell cmdlets shipped with the DSM to manage the DSM programmatically.
 
comments  Comments Off
formats

BlackBerry Enterprise Server Interim Security Update for February 12,2013

Published on February 13th, 2013 by in BlackBerry

Saw this today ..

Fixed issues

Vulnerabilities existed in how the BlackBerry MDS Connection Service, BlackBerry Collaboration Service, and the BlackBerry Messaging Agent processed TIFF images for rendering on BlackBerry devices. These vulnerabilities could have allowed a potentially malicious user to execute arbitrary code using the privileges of the BlackBerry Enterprise Server login account. (DT 5468999, DT 5542642, DT 5890761, and DT 6098370)

These issues are resolved by this interim security software update. The update replaces the image.dll file that the affected components use with an image.dll file that is not affected by the vulnerabilities. For more information, visit www.blackberry.com/btsc to read KB33425.

 
comments  Comments Off
formats

PowerShell ASP: Get-TransportQueue.ps1x [Update]

Published on February 12th, 2013 by in Powershell

#Powershell #Exchange2010 #PowerShellInside

Forgot to upload the file, as copy and paste seems to something strange.. So here it is

Get-TransportQueue.ps1x

 
comments  Comments Off
formats

NetApp sdcli disk list to CSV with Powershell

#NetApp #sdcli #Powershell

So I have been breaking playing around with Jetstress, NetApp filers and Cisco UCS.  Not have much fun or luck, as I just cant get the damn thing to pass even a simple test.  But that is another story!

I have been looking at sdcli and getting some powershell automation going, and I wanted to find out details of all the disks connected to my severs.  Now sdcli is the worst thing in the word for getting anything decent out, so I wrote the following.  Basically run it on a server with NetApp SnapDrive and it will give you a CSV file with the output of sdcli disk list.  Shweet ;-)   It crude but effective!

Enjoy

Get-SdcliDiskList.ps1

$diskInfo = Invoke-Expression “sdcli disk list”$tmpsdcliDiskListMatrix = @()
ForEach($Item in $DiskInfo){
$tmpItem = $Item.Trim()
$tmpItemSplit = $tmpItem.Split(“:”)
Switch -Wildcard ($tmpItem){
“UNC Path:*”  {$tmpsdcliDiskListMatrix  += $sdcliDiskList
$sdcliDiskList = “” | Select UNCPath, LUNPath, StorageSystem, StorageSystemPath, Type, Diskserialnumber, BackedbySnapshotCopy, Shared, BootOrSystemDisk, SCSIport, Bus, Target, LUN, Readonly, Size, SnapmirrorSource, SnapvaultPrimary, DiskPartitionStyle, CloneSplitRestorestatus, DiskID, VolumeName, Mountpoints, IPAddresses, FCinitiatorWWPN
$sdcliDiskList.UNCPath = $tmpItemSplit[-1]}
“LUN Path:*”                  {$sdcliDiskList.LUNPath = $tmpItemSplit[-1]}
“Storage System:*”            {$sdcliDiskList.StorageSystem = $tmpItemSplit[-1].trim()}
“Storage System Path:*”       {$sdcliDiskList.StorageSystemPath = $tmpItemSplit[-1].trim()}
“Type:*”                      {$sdcliDiskList.Type = $tmpItemSplit[-1].trim()}
“Disk serial number:*”        {$sdcliDiskList.Diskserialnumber = $tmpItemSplit[-1].trim()}
“Backed by Snapshot Copy:*”   {$sdcliDiskList.BackedbySnapshotCopy = $tmpItemSplit[-1].trim()}
“Shared:*”                    {$sdcliDiskList.Shared = $tmpItemSplit[-1].trim()}
“BootOrSystem Disk:*”          {$sdcliDiskList.BootOrSystemDisk = $tmpItemSplit[-1].trim()}
“SCSI port:*”                  {$sdcliDiskList.SCSIport = $tmpItemSplit[-1].trim()}
“Bus:*”                        {$sdcliDiskList.Bus = $tmpItemSplit[-1].trim()}
“Target:*”                     {$sdcliDiskList.Target = $tmpItemSplit[-1].trim()}
“LUN:*”                        {$sdcliDiskList.Lun = $tmpItemSplit[-1].trim()}
“Readonly:*”                   {$sdcliDiskList.Readonly = $tmpItemSplit[-1].trim()}
“Size:*”                       {$sdcliDiskList.Size = $tmpItemSplit[-1].trim()}
“Snapmirror Source:*”          {$sdcliDiskList.SnapmirrorSource = $tmpItemSplit[-1].trim()}
“Snapvault Primary:*”          {$sdcliDiskList.SnapvaultPrimary = $tmpItemSplit[-1].trim()}
“Disk Partition Style:*”       {$sdcliDiskList.DiskPartitionStyle = $tmpItemSplit[-1].trim()}
“Clone Split Restore status:*” {$sdcliDiskList.CloneSplitRestorestatus = $tmpItemSplit[-1].trim()}
“DiskID:*”                     {$sdcliDiskList.DiskID = $tmpItemSplit[-1].trim()}
“Volume Name:*”                {$sdcliDiskList.VolumeName = $tmpItemSplit[-1].trim()}
“*Mount points:*”              {$sdcliDiskList.Mountpoints = $tmpItem.Split(“`t”)[-1].trim()}
“IP Addresses:*”               {$sdcliDiskList.IPAddresses = $tmpItemSplit[-1].trim()}
“FC initiator WWPN:*”          {$sdcliDiskList.FCinitiatorWWPN = $tmpItem.Split(“`t”)[-1].trim()}
}
}

$tmpsdcliDiskListMatrix  | Export-Csv SDCLIDisks.csv -NoTypeInformation -Delimiter “|”

 
comments  Comments Off
 
© Origin Solutions IT Limited