Check with your SAN admin as to whether the SAN has any defrag software. If it does, use that if you have to. Some SANs intentionally fragment files for performance reasons.
If you are going to defrag, stop the SQL service. Yes, some tools say they can defrag online, one error and you have corrupt databases.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability